diff generator/typesystem_gui.xml @ 71:9071511f7a5b

nicer API for QInput dialog
author eldar
date Wed, 20 May 2009 21:06:33 +0000
parents 753b1973273b
children 848b19368a42
line wrap: on
line diff
--- a/generator/typesystem_gui.xml	Wed May 20 13:24:34 2009 +0000
+++ b/generator/typesystem_gui.xml	Wed May 20 21:06:33 2009 +0000
@@ -1,8073 +1,8073 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<typesystem package="qt.gui" default-superclass="QtDObject">
-<depend package="qt.core" />
-<inject-code>
-        qt.Utilities.loadQtLibrary("QtGui");
-</inject-code>
-
-<template name="gui.class_from_variant_java">
-    public this(QVariant arg__1) {
-        void* __qt_return_value = qtd_%CLASS_NAME_%CLASS_NAME_QVariant(cast(void*) this, arg__1 is null ? null : arg__1.nativeId);
-        super(__qt_return_value);
-    }
-</template>
-
-<template name="gui.class_from_variant_java_free">
-private extern (C) void* qtd_%CLASS_NAME_%CLASS_NAME_QVariant(void *d_ptr,
- void* arg__1);
-</template>
-
-<template name="gui.class_from_variant_native">
-// %CLASS_NAME from QVariant
-extern "C" DLL_PUBLIC void* qtd_%CLASS_NAME_%CLASS_NAME_QVariant
-(void *d_ptr,
- void* arg__1)
-{
-    const QVariant&amp;  __qt_arg__1 = (const QVariant&amp; ) *(QVariant *)arg__1;
-    %CLASS_NAME __qt_casted = qvariant_cast&lt;%CLASS_NAME&gt;(__qt_arg__1);
-    %CLASS_NAME *__qt_this = new %CLASS_NAME((const %CLASS_NAME&amp; )__qt_casted);
-    return (void *) __qt_this;
-}
-</template>
-
-<template name="gui.class_from_variant_native_shell">
-// %CLASS_NAME from QVariant
-extern "C" DLL_PUBLIC void* qtd_%CLASS_NAME_%CLASS_NAME_QVariant
-(void *d_ptr,
- void* arg__1)
-{
-    const QVariant&amp;  __qt_arg__1 = (const QVariant&amp; ) *(QVariant *)arg__1;
-    %CLASS_NAME __qt_casted = qvariant_cast&lt;%CLASS_NAME&gt;(__qt_arg__1);
-    %CLASS_NAME_QtDShell *__qt_this = new %CLASS_NAME_QtDShell(d_ptr, (const %CLASS_NAME&amp; )__qt_casted);
-    return (void *) __qt_this;
-}
-</template>
-<!-- without shell
-    <inject-code class="java">
-        <insert-template name="gui.class_from_variant_java">
-            <replace from="%CLASS_NAME" to=""/>
-        </insert-template>
-    </inject-code>   
-    <inject-code class="java-free">
-        <insert-template name="gui.class_from_variant_java_free">
-            <replace from="%CLASS_NAME" to=""/>
-        </insert-template>
-    </inject-code>
-    <inject-code class="native">
-        <insert-template name="gui.class_from_variant_native">
-            <replace from="%CLASS_NAME" to=""/>
-        </insert-template>
-    </inject-code>
-    
-  with shell
-    <inject-code class="java">
-        <insert-template name="gui.class_from_variant_java">
-            <replace from="%CLASS_NAME" to=""/>
-        </insert-template>
-    </inject-code>   
-    <inject-code class="java-free">
-        <insert-template name="gui.class_from_variant_java_free">
-            <replace from="%CLASS_NAME" to=""/>
-        </insert-template>
-    </inject-code>
-    <inject-code class="native">
-        <insert-template name="gui.class_from_variant_native_shell">
-            <replace from="%CLASS_NAME" to=""/>
-        </insert-template>
-    </inject-code>
--->
-
-        
-<template name="gui.getter_returning_nativepointer">
-        public final %RETURN_TYPE %FUNCTION_NAME() {
-            QNativePointer np = %FUNCTION_NAME_private();
-            %RETURN_TYPE tmp = np == null ? null : %RETURN_TYPE.fromNativePointer(np);
-            return tmp == null ? null : new %RETURN_TYPE(tmp);
-        }
-
-    </template>
-<template name="gui.init_style_option">
-        protected final void initStyleOption(%TYPE option) {
-            initStyleOption(option.nativePointer());
-        }
-    </template>
-<template name="gui.convert_validationdata_to_java">
-        StaticCache *sc = StaticCache::instance();
-        sc-&gt;resolveValidationData();
-        jstring __qt_converted_input = qtjambi_from_qstring(__jni_env, %STRING);
-        jobject %out = __jni_env-&gt;NewObject(sc-&gt;ValidationData.class_ref, sc-&gt;ValidationData.constructor, __qt_converted_input, %POS);
-        jobject __java_validation_data = %out;
-    </template>
-<template name="gui.cleanup_validationdata_from_java">
-        __jni_env-&gt;SetIntField(%1, sc-&gt;ValidationData.position, *__position_ptr);
-        __jni_env-&gt;SetObjectField(%1, sc-&gt;ValidationData.string, qtjambi_from_qstring(__jni_env, *__string_ptr));
-    </template>
-<template name="gui.convert_validationdata_to_string">
-        StaticCache *sc = StaticCache::instance();
-        sc-&gt;resolveValidationData();
-        jstring __java_string = (jstring) __jni_env-&gt;GetObjectField(%in, sc-&gt;ValidationData.string);
-        QString %out = __java_string == 0 ? QString() : qtjambi_to_qstring(__jni_env, __java_string);
-        QString *__string_ptr = &amp;%out;
-    </template>
-<template name="gui.convert_validationdata_to_pos">
-        int %out = __jni_env-&gt;GetIntField(%1, sc-&gt;ValidationData.position);
-        int *__position_ptr = &amp;%out;
-    </template>
-<template name="gui.cleanup_validationdata_to_java">
-        jstring __java_string = (jstring) __jni_env-&gt;GetObjectField(__java_validation_data, sc-&gt;ValidationData.string);
-        %STRING = __java_string == 0 ? QString() : qtjambi_to_qstring(__jni_env, __java_string);
-        %POS = __jni_env-&gt;GetIntField(__java_validation_data, sc-&gt;ValidationData.position);
-    </template>
-<template name="gui.convert_object_array_to_java">
-        jobjectArray %out = 0;
-
-        {
-            jclass __resolved_class = resolveClass(__jni_env, "%CLASSNAME_ARRAY", "%PACKAGE_ARRAY");
-            QTJAMBI_EXCEPTION_CHECK(__jni_env);
-            Q_ASSERT(__resolved_class != 0);
-
-            %out = %in == 0 ? 0 : __jni_env-&gt;NewObjectArray(%LENGTH, __resolved_class, 0);
-            QTJAMBI_EXCEPTION_CHECK(__jni_env);
-            if (%out != 0) {
-                for (int i=0; i&lt;%LENGTH; ++i) {
-                    __jni_env-&gt;SetObjectArrayElement(%out, i, qtjambi_from_object(__jni_env, %REFERENCE %in[i], "%CLASSNAME", "%PACKAGE", %LOOKUP true));
-                }
-            }
-       }
-    </template>
-<template name="gui.convert_graphicsitem_array_to_java">
-        <insert-template name="gui.convert_object_array_to_java">
-            <replace from="%CLASSNAME_ARRAY" to="QGraphicsItemInterface"/>
-            <replace from="%PACKAGE_ARRAY" to="com/trolltech/qt/gui/"/>
-            <replace from="%CLASSNAME" to="QGraphicsItem$ConcreteWrapper"/>
-            <replace from="%PACKAGE" to="com/trolltech/qt/gui/"/>
-            <replace from="%LOOKUP" to=""/>
-            <replace from="%REFERENCE" to=""/>
-        </insert-template>
-    </template>
-<template name="gui.convert_styleoptiongraphicsitem_array_to_java">
-        <insert-template name="gui.convert_object_array_to_java">
-            <replace from="%CLASSNAME_ARRAY" to="QStyleOptionGraphicsItem"/>
-            <replace from="%PACKAGE_ARRAY" to="com/trolltech/qt/gui/"/>
-            <replace from="%CLASSNAME" to="QStyleOptionGraphicsItem"/>
-            <replace from="%PACKAGE" to="com/trolltech/qt/gui/"/>
-            <replace from="%LOOKUP" to="&quot;Lcom_trolltech_qt_gui_QStyleOption_2&quot;,"/>
-            <replace from="%REFERENCE" to="&amp;"/>
-        </insert-template>
-    </template>
-<template name="gui.convert_interface_array_from_java">
-        %CLASSNAME *%out = 0;
-        QVarLengthArray&lt;%CLASSNAME, 256&gt; __interfaceArray(__length);
-        if (%in != 0) {
-            for (int i=0; i&lt;__length; ++i) {
-                __interfaceArray[i] = (%CLASSNAME) %CONVERSION_FUNCTION(__jni_env, __jni_env-&gt;GetObjectArrayElement((jobjectArray) %in, i) %EXTRA);
-            }
-        }
-        %out = %in == 0 ? 0 : __interfaceArray.data();
-    </template>
-<template name="gui.convert_object_array_from_java">
-        %CLASSNAME *%out = 0;
-        QVarLengthArray&lt;%CLASSNAME, 256&gt; __array(__length);
-        if (%in != 0) {
-            for (int i=0; i&lt;__length; ++i) {
-                __array[i] = *(%CLASSNAME *) %CONVERSION_FUNCTION(__jni_env, __jni_env-&gt;GetObjectArrayElement((jobjectArray) %in, i) %EXTRA);
-            }
-        }
-        %out = %in == 0 ? 0 : __array.data();
-    </template>
-<template name="gui.convert_graphicsitem_array_from_java">
-        <insert-template name="gui.convert_interface_array_from_java">
-            <replace from="%CLASSNAME" to="QGraphicsItem *"/>
-            <replace from="%EXTRA" to=", &quot;QGraphicsItemInterface&quot;, &quot;com/trolltech/qt/gui/&quot;, &quot;__qt_cast_to_QGraphicsItem&quot;"/>
-            <replace from="%CONVERSION_FUNCTION" to="qtjambi_to_interface"/>
-        </insert-template>
-    </template>
-<template name="gui.convert_styleoptiongraphicsitem_array_from_java">
-        <insert-template name="gui.convert_object_array_from_java">
-            <replace from="%CLASSNAME" to="QStyleOptionGraphicsItem"/>
-            <replace from="%EXTRA" to=""/>
-            <replace from="%CONVERSION_FUNCTION" to="qtjambi_to_object"/>
-        </insert-template>
-    </template>
-<template name="gui::qstyleoption_from_object">
-        jobject %out = qtjambi_from_object(__jni_env, %in, "QStyleOption", "com/trolltech/qt/gui/", "Lcom_trolltech_qt_gui_QStyleOption_2", true);
-    </template>
-<template name="gui::qstyleoptioncomplex_from_object">
-        jobject %out = qtjambi_from_object(__jni_env, %in, "QStyleOptionComplex", "com/trolltech/qt/gui/", "Lcom_trolltech_qt_gui_QStyleOption_2", true);
-    </template>
-<template name="gui::qstyleoption_to_object">
-        QStyleOption *%out = (QStyleOption *) qtjambi_to_object(__jni_env, %in);
-    </template>
-<template name="gui.inputDialog_get_input">
-    public static %RETURN_TYPE %FUNCTION_NAME(qt.gui.QWidget parent, java.lang.String title, java.lang.String label, %EXTRA, qt.core.Qt.WindowFlags f) {
-        qt.QNativePointer ok = new qt.QNativePointer(qt.QNativePointer.Type.Boolean);
-        %RETURN_TYPE result = %FUNCTION_NAME_internal(parent, title, label, %CALL, ok, f);
-        return ok.booleanValue() ? result : null;
-    }
-
-    public static %RETURN_TYPE %FUNCTION_NAME(qt.gui.QWidget parent, java.lang.String title, java.lang.String label, %EXTRA, qt.core.Qt.WindowType ... f) {
-        qt.QNativePointer ok = new qt.QNativePointer(qt.QNativePointer.Type.Boolean);
-        %RETURN_TYPE result = %FUNCTION_NAME_internal(parent, title, label, %CALL, ok, f);
-        return ok.booleanValue() ? result : null;
-    }
-
-    public static %RETURN_TYPE %FUNCTION_NAME(qt.gui.QWidget parent, java.lang.String title, java.lang.String label, %EXTRA) {
-        return %FUNCTION_NAME(parent, title, label, %CALL, qt.core.Qt.WindowType.Widget);
-    }
-
-    </template>
-<suppress-warning text="WARNING(JavaGenerator) :: either add or remove specified for reference count variable '__rcItems' in 'qt.gui.QGraphicsGridLayout' but not both"/>
-
-  <rejection class="*" function-name="d_func"/>
-
-  <rejection class="*" field-name="d_ptr"/>
-  <rejection class="*" field-name="d"/>
-  
-  <rejection class="QAccessibleTableInterface"/>
-  
-  <rejection class="QWindowsCEStyle"/>
-  <rejection class="QWindowsMobileStyle"/>
-  <rejection class="QAbstractUndoItem"/>
-  <rejection class="QAccessibleApplication"/>
-  <rejection class="QBrushData"/>
-  <rejection class="QImageTextKeyLang"/>
-  <rejection class="QItemEditorCreator"/>
-  <rejection class="QLibrary"/>
-  <rejection class="QLinkedList"/>
-  <rejection class="QLinkedListData"/>
-  <rejection class="QLinkedListIterator"/>
-  <rejection class="QLinkedListNode"/>
-  <rejection class="QMimeSource"/>
-  <rejection class="QPainterPathPrivate"/>
-  <rejection class="QRegionData"/>
-  <rejection class="QStandardItemEditorCreator"/>
-  <rejection class="QStyleOptionQ3DockWindow"/>
-  <rejection class="QStyleOptionQ3ListView"/>
-  <rejection class="QStyleOptionQ3ListViewItem"/>
-  <rejection class="QTextFrameLayoutData"/>
-  <rejection class="QUpdateLaterEvent"/>
-  <rejection class="QVFbHeader"/>
-  <rejection class="QWidgetData"/>
-  <rejection class="QWindowSurface"/>
-  <rejection class="QWindowsXPStyle"/>
-  <rejection class="QWindowsVistaStyle"/>
-  <rejection class="QWSEmbedWidget"/>
-  <rejection class="QRegion::QRegionData"/>
-  <rejection class="JObject_key"/>
-  <rejection class="QAccessibleEditableTextInterface"/>
-  <rejection class="QAccessibleSimpleEditableTextInterface"/>
-  <rejection class="QAccessibleTextInterface"/>
-  <rejection class="QAccessibleValueInterface"/>
-  <rejection class="QIconEngineFactoryInterface"/>
-  <rejection class="QIconEnginePlugin"/>
-  <rejection class="QWidgetItemV2"/>
-  <rejection class="QAbstractItemDelegate" function-name="operator="/>
-  <rejection class="QAccessible" function-name="installFactory"/>
-  <rejection class="QAccessible" function-name="installRootObjectHandler"/>
-  <rejection class="QAccessible" function-name="installUpdateHandler"/>
-  <rejection class="QAccessible" function-name="removeFactory"/>
-  <rejection class="QApplication" function-name="compressEvent"/>
-  <rejection class="QBrush" function-name="cleanUp"/>
-  <rejection class="QPictureIO" function-name="defineIOHandler"/>
-  <rejection class="QPolygon" function-name="putPoints"/>
-  <rejection class="QPolygon" function-name="setPoints"/>
-  <rejection class="QPolygon" function-name="setPoint"/>
-  <rejection class="QPolygon" function-name="points"/>
-  <rejection class="QPolygon" function-name="point"/>
-  <rejection class="QPrinter" function-name="printerSelectionOption"/>
-  <rejection class="QPrinter" function-name="setPrinterSelectionOption"/>
-  <rejection class="QWidget" function-name="create"/>
-  <rejection class="QWidget" function-name="find"/>
-  <rejection class="QWidget" function-name="handle"/>
-  <rejection class="QWidget" function-name="styleChange"/>
-  <rejection class="QWidget" function-name="internalWinId"/>
-  <rejection class="QActionGroup" function-name="selected"/>
-  <rejection class="QPaintEngine" function-name="fix_neg_rect"/>
-  <rejection class="QTreeModel" function-name="node"/>
-  <rejection class="QTreeModel" function-name="initializeNode"/>
-  <rejection class="QTreeModel" function-name="queryChildren"/>
-  <rejection class="QAccessible" function-name="cast_helper"/>
-  <rejection class="QAccessible2"/>
-  <rejection class="QAccessibleInterface" function-name="backgroundColor"/>
-  <rejection class="QAccessibleInterface" function-name="foregroundColor"/>
-  <rejection class="QAccessibleInterface" function-name="textInterface"/>
-  <rejection class="QAccessibleInterface" function-name="valueInterface"/>
-  <rejection class="QAccessibleInterface" function-name="tableInterface"/>
-  <rejection class="QAccessibleInterface" function-name="editableTextInterface"/>
-  <rejection class="QAccessibleInterface" function-name="cast_helper"/>
-  <rejection class="QAccessibleInterfaceEx" function-name="interface_cast"/>
-  <rejection class="QAccessibleBridgePlugin"/>
-  <rejection class="QAccessibleBridgeFactoryInterface"/>
-  <rejection class="QTabletEvent" field-name="mExtra"/>
-  <rejection class="QWidgetItem" field-name="wid"/>
-  <rejection class="QFont" enum-name="ResolveProperties"/>
-
-  <enum-type name="QAbstractItemDelegate::EndEditHint"/>
-  <enum-type name="QAbstractItemView::CursorAction"/>
-  <enum-type name="QAbstractItemView::DragDropMode"/>
-  <enum-type name="QAbstractItemView::DropIndicatorPosition"/>
-  <enum-type name="QAbstractItemView::EditTrigger" flags="QAbstractItemView::EditTriggers"/>
-  <enum-type name="QAbstractItemView::ScrollHint"/>
-  <enum-type name="QAbstractItemView::ScrollMode"/>
-  <enum-type name="QAbstractItemView::SelectionBehavior"/>
-  <enum-type name="QAbstractItemView::SelectionMode"/>
-  <enum-type name="QAbstractItemView::State"/>
-  <enum-type name="QAbstractPrintDialog::PrintDialogOption" flags="QAbstractPrintDialog::PrintDialogOptions"/>
-  <enum-type name="QAbstractPrintDialog::PrintRange"/>
-  <enum-type name="QAbstractSlider::SliderAction"/>
-  <enum-type name="QAbstractSlider::SliderChange"/>
-  <enum-type name="QAbstractSpinBox::ButtonSymbols"/>
-  <enum-type name="QAbstractSpinBox::CorrectionMode"/>
-  <enum-type name="QAbstractSpinBox::StepEnabledFlag" flags="QAbstractSpinBox::StepEnabled"/>
-  <enum-type name="QAccessible::Event"/>
-  <enum-type name="QAccessible::Method"/>
-  <enum-type name="QAccessible::RelationFlag" flags="QAccessible::Relation"/>
-  <enum-type name="QAccessible::Role"/>
-  <enum-type name="QAccessible::StateFlag" flags="QAccessible::State"/>
-  <enum-type name="QAccessible::Text"/>
-  <enum-type name="QDesktopServices::StandardLocation"/>
-  <enum-type name="QDirModel::Roles"/>
-  <enum-type name="QFont::Capitalization"/>
-  <enum-type name="QFont::SpacingType"/>
-  <enum-type name="QGraphicsItem::CacheMode"/>
-  <enum-type name="QMdiArea::AreaOption" flags="QMdiArea::AreaOptions"/>
-  <enum-type name="QMdiArea::WindowOrder"/>
-  <enum-type name="QMdiArea::ViewMode"/>
-  <enum-type name="QFileSystemModel::Roles"/>
-  <enum-type name="QFormLayout::FieldGrowthPolicy"/>
-  <enum-type name="QFormLayout::FormStyle"/>
-  <enum-type name="QFormLayout::ItemRole"/>
-  <enum-type name="QFormLayout::RowWrapPolicy"/>
-  <enum-type name="QGraphicsProxyWidget::enum_1"/>
-  <enum-type name="QGraphicsWidget::enum_1"/>
-  <enum-type name="QPlainTextEdit::LineWrapMode"/>
-  <enum-type name="QPrintPreviewWidget::ViewMode"/>
-  <enum-type name="QPrintPreviewWidget::ZoomMode"/>
-  <enum-type name="QStyleOptionViewItemV4::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionViewItemV4::ViewItemPosition"/>
-
-  <enum-type name="QMdiSubWindow::SubWindowOption" flags="QMdiSubWindow::SubWindowOptions"/>
-
-  <enum-type name="QAction::ActionEvent"/>
-  <enum-type name="QAction::MenuRole"/>
-  <enum-type name="QApplication::ColorSpec"/>
-  <enum-type name="QApplication::Type"/>
-  <enum-type name="QCalendarWidget::HorizontalHeaderFormat"/>
-  <enum-type name="QCalendarWidget::SelectionMode"/>
-  <enum-type name="QCalendarWidget::VerticalHeaderFormat"/>
-  <enum-type name="QColor::Spec"/>
-  <enum-type name="QColormap::Mode"/>
-  <enum-type name="QComboBox::InsertPolicy"/>
-  <enum-type name="QComboBox::SizeAdjustPolicy"/>
-  <enum-type name="QCompleter::CompletionMode"/>
-  <enum-type name="QCompleter::ModelSorting"/>
-  <enum-type name="QContextMenuEvent::Reason"/>
-  <enum-type name="QDataWidgetMapper::SubmitPolicy"/>
-  <enum-type name="QDateTimeEdit::Section" flags="QDateTimeEdit::Sections"/>
-  <enum-type name="QDialog::DialogCode"/>
-  <enum-type name="QDialogButtonBox::ButtonLayout"/>
-  <enum-type name="QDialogButtonBox::ButtonRole"/>
-  <enum-type name="QFileDialog::AcceptMode"/>
-  <enum-type name="QFileDialog::DialogLabel"/>
-  <enum-type name="QFileDialog::FileMode"/>
-  <enum-type name="QFileDialog::Option" flags="QFileDialog::Options"/>
-  <enum-type name="QFileDialog::ViewMode"/>
-  <enum-type name="QFileIconProvider::IconType"/>
-  <enum-type name="QFont::Stretch"/>
-  <enum-type name="QFont::Style"/>
-  <enum-type name="QFont::StyleStrategy"/>
-  <enum-type name="QFont::Weight"/>
-  <enum-type name="QFontComboBox::FontFilter" flags="QFontComboBox::FontFilters"/>
-  <enum-type name="QFrame::Shadow" extensible="yes"/>
-  <enum-type name="QFrame::Shape"/>
-  <enum-type name="QFrame::StyleMask"/>
-  <enum-type name="QGradient::CoordinateMode"/>
-  <enum-type name="QGradient::Spread" lower-bound="QGradient.PadSpread" upper-bound="QGradient.RepeatSpread"/>
-  <enum-type name="QGradient::Type"/>
-  <enum-type name="QGraphicsEllipseItem::enum_1"/>
-  <enum-type name="QGraphicsItem::Extension"/>
-  <enum-type name="QGraphicsItem::GraphicsItemChange"/>
-  <enum-type name="QGraphicsItem::GraphicsItemFlag" flags="QGraphicsItem::GraphicsItemFlags"/>
-  <enum-type name="QGraphicsItem::enum_1"/>
-  <enum-type name="QGraphicsItemGroup::enum_1"/>
-  <enum-type name="QGraphicsLineItem::enum_1"/>
-  <enum-type name="QGraphicsPathItem::enum_1"/>
-  <enum-type name="QGraphicsPixmapItem::ShapeMode"/>
-  <enum-type name="QGraphicsPixmapItem::enum_1"/>
-  <enum-type name="QGraphicsPolygonItem::enum_1"/>
-  <enum-type name="QGraphicsRectItem::enum_1"/>
-  <enum-type name="QGraphicsScene::ItemIndexMethod"/>
-  <enum-type name="QGraphicsSceneContextMenuEvent::Reason"/>
-  <enum-type name="QGraphicsSimpleTextItem::enum_1"/>
-  <enum-type name="QGraphicsTextItem::enum_1"/>
-  <enum-type name="QGraphicsView::CacheModeFlag" flags="QGraphicsView::CacheMode"/>
-  <enum-type name="QGraphicsView::DragMode"/>
-  <enum-type name="QGraphicsView::OptimizationFlag" flags="QGraphicsView::OptimizationFlags"/>
-  <enum-type name="QGraphicsView::ViewportAnchor"/>
-  <enum-type name="QGraphicsView::ViewportUpdateMode"/>
-  <enum-type name="QIcon::Mode"/>
-  <enum-type name="QIcon::State"/>
-  <enum-type name="QImage::Format"/>
-  <enum-type name="QImage::InvertMode"/>
-  <enum-type name="QImageIOHandler::ImageOption"/>
-  <enum-type name="QImageReader::ImageReaderError"/>
-  <enum-type name="QImageWriter::ImageWriterError"/>
-  <enum-type name="QInputContext::StandardFormat"/>
-  <enum-type name="QInputMethodEvent::AttributeType"/>
-  <enum-type name="QItemSelectionModel::SelectionFlag" flags="QItemSelectionModel::SelectionFlags"/>
-  <enum-type name="QKeySequence::SequenceFormat"/>
-  <enum-type name="QKeySequence::SequenceMatch"/>
-  <enum-type name="QKeySequence::StandardKey"/>
-  <enum-type name="QLCDNumber::Mode"/>
-  <enum-type name="QLCDNumber::SegmentStyle"/>
-  <enum-type name="QLayout::SizeConstraint"/>
-  <enum-type name="QLineEdit::EchoMode"/>
-  <enum-type name="QLineF::IntersectType"/>
-  <enum-type name="QListView::Flow"/>
-  <enum-type name="QListView::LayoutMode"/>
-  <enum-type name="QListView::Movement"/>
-  <enum-type name="QListView::ResizeMode"/>
-  <enum-type name="QListView::ViewMode"/>
-  <enum-type name="QListWidgetItem::ItemType"/>
-  <enum-type name="QMainWindow::DockOption" flags="QMainWindow::DockOptions"/>
-  <enum-type name="QMessageBox::ButtonRole"/>
-  <enum-type name="QMessageBox::Icon"/>
-  <enum-type name="QMovie::CacheMode"/>
-  <enum-type name="QMovie::MovieState"/>
-  <enum-type name="QPaintDevice::PaintDeviceMetric"/>
-  <enum-type name="QPaintEngine::DirtyFlag" flags="QPaintEngine::DirtyFlags"/>
-  <enum-type name="QPaintEngine::PaintEngineFeature" flags="QPaintEngine::PaintEngineFeatures"/>
-  <enum-type name="QPaintEngine::PolygonDrawMode"/>
-  <enum-type name="QPaintEngine::Type"/>
-  <enum-type name="QPageSetupDialog::PageSetupDialogOption" flags="QPageSetupDialog::PageSetupDialogOptions"/>
-  <enum-type name="QPainter::CompositionMode"/>
-  <enum-type name="QPainter::RenderHint" flags="QPainter::RenderHints"/>
-  <enum-type name="QPainterPath::ElementType"/>
-  <enum-type name="QPrintEngine::PrintEnginePropertyKey">
-    <reject-enum-value name="PPK_PaperSize"/>
-  </enum-type>
-  <enum-type name="QPrinter::ColorMode"/>
-  <enum-type name="QPrinter::Orientation"/>
-  <enum-type name="QPrinter::OutputFormat"/>
-  <enum-type name="QPrinter::PageOrder"/>
-  <enum-type name="QPrinter::PaperSource"/>
-  <enum-type name="QPrinter::PrintRange"/>
-  <enum-type name="QPrinter::PrinterMode"/>
-  <enum-type name="QPrinter::PrinterState"/>
-  <enum-type name="QPrinter::Unit"/>
-  <enum-type name="QPrinter::DuplexMode"/>
-  <enum-type name="QProgressBar::Direction"/>
-  <enum-type name="QRegion::RegionType"/>
-  <enum-type name="QRubberBand::Shape"/>
-  <enum-type name="QSessionManager::RestartHint"/>
-  <enum-type name="QSizePolicy::Policy"/>
-  <enum-type name="QSizePolicy::PolicyFlag"/>
-  <enum-type name="QSizePolicy::ControlType" flags="QSizePolicy::ControlTypes"/>
-  <enum-type name="QStandardItem::ItemType"/>
-  <enum-type name="QStyle::SubControl" flags="QStyle::SubControls" extensible="yes" force-integer="yes"/>
-  <enum-type name="QStyle::ComplexControl" extensible="yes"/>
-  <enum-type name="QStyle::ContentsType" extensible="yes"/>
-  <enum-type name="QStyle::ControlElement" extensible="yes"/>
-  <enum-type name="QStyle::PixelMetric" extensible="yes">
-    <reject-enum-value name="PM_MDIFrameWidth"/>
-    <reject-enum-value name="PM_MDIMinimizedWidth"/>
-  </enum-type>
-  <enum-type name="QStyle::PrimitiveElement" extensible="yes">
-    <reject-enum-value name="PE_IndicatorItemViewItemCheck"/>
-    <reject-enum-value name="PE_FrameStatusBarItem"/>
-  </enum-type>
-  <enum-type name="QStyle::StandardPixmap" extensible="yes"/>
-  <enum-type name="QStyle::StateFlag" flags="QStyle::State"/>
-  <enum-type name="QStyle::SubElement" extensible="yes">
-    <reject-enum-value name="SE_ItemViewItemCheckIndicator"/>
-  </enum-type>
-  <enum-type name="QStyleHintReturn::HintReturnType"/>
-  <enum-type name="QStyleHintReturn::StyleOptionType"/>
-  <enum-type name="QStyleHintReturn::StyleOptionVersion"/>
-  <enum-type name="QStyleHintReturnVariant::StyleOptionType"/>
-  <enum-type name="QStyleHintReturnVariant::StyleOptionVersion"/>
-
-  <enum-type name="QStyleHintReturnMask::StyleOptionType"/>
-  <enum-type name="QStyleHintReturnMask::StyleOptionVersion"/>
-  <enum-type name="QStyleOption::StyleOptionType"/>
-  <enum-type name="QStyleOption::OptionType" extensible="yes"/>
-  <enum-type name="QStyleOption::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionButton::ButtonFeature" flags="QStyleOptionButton::ButtonFeatures"/>
-  <enum-type name="QStyleOptionButton::StyleOptionType"/>
-  <enum-type name="QStyleOptionButton::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionComboBox::StyleOptionType"/>
-  <enum-type name="QStyleOptionComboBox::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionComplex::StyleOptionType"/>
-  <enum-type name="QStyleOptionComplex::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionDockWidget::StyleOptionType"/>
-  <enum-type name="QStyleOptionDockWidget::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionDockWidgetV2::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionFocusRect::StyleOptionType"/>
-  <enum-type name="QStyleOptionFocusRect::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionFrame::StyleOptionType"/>
-  <enum-type name="QStyleOptionFrame::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionFrameV2::FrameFeature" flags="QStyleOptionFrameV2::FrameFeatures"/>
-  <enum-type name="QStyleOptionFrameV2::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionGraphicsItem::StyleOptionType"/>
-  <enum-type name="QStyleOptionGraphicsItem::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionGroupBox::StyleOptionType"/>
-  <enum-type name="QStyleOptionGroupBox::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionHeader::SectionPosition"/>
-  <enum-type name="QStyleOptionHeader::SelectedPosition"/>
-  <enum-type name="QStyleOptionHeader::SortIndicator"/>
-  <enum-type name="QStyleOptionHeader::StyleOptionType"/>
-  <enum-type name="QStyleOptionHeader::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionMenuItem::CheckType"/>
-  <enum-type name="QStyleOptionMenuItem::MenuItemType"/>
-  <enum-type name="QStyleOptionMenuItem::StyleOptionType"/>
-  <enum-type name="QStyleOptionMenuItem::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionProgressBar::StyleOptionType"/>
-  <enum-type name="QStyleOptionProgressBar::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionProgressBarV2::StyleOptionType"/>
-  <enum-type name="QStyleOptionProgressBarV2::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionRubberBand::StyleOptionType"/>
-  <enum-type name="QStyleOptionRubberBand::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionSizeGrip::StyleOptionType"/>
-  <enum-type name="QStyleOptionSizeGrip::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionSlider::StyleOptionType"/>
-  <enum-type name="QStyleOptionSlider::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionSpinBox::StyleOptionType"/>
-  <enum-type name="QStyleOptionSpinBox::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionTab::CornerWidget" flags="QStyleOptionTab::CornerWidgets"/>
-  <enum-type name="QStyleOptionTab::SelectedPosition"/>
-  <enum-type name="QStyleOptionTab::StyleOptionType"/>
-  <enum-type name="QStyleOptionTab::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionTab::TabPosition"/>
-  <enum-type name="QStyleOptionTabBarBase::StyleOptionType"/>
-  <enum-type name="QStyleOptionTabBarBase::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionTabV2::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionTabWidgetFrame::StyleOptionType"/>
-  <enum-type name="QStyleOptionTabWidgetFrame::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionTitleBar::StyleOptionType"/>
-  <enum-type name="QStyleOptionTitleBar::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionToolBar::StyleOptionType"/>
-  <enum-type name="QStyleOptionToolBar::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionToolBar::ToolBarFeature" flags="QStyleOptionToolBar::ToolBarFeatures"/>
-  <enum-type name="QStyleOptionToolBar::ToolBarPosition"/>
-  <enum-type name="QStyleOptionToolBox::StyleOptionType"/>
-  <enum-type name="QStyleOptionToolBox::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionToolButton::StyleOptionType"/>
-  <enum-type name="QStyleOptionToolButton::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionToolButton::ToolButtonFeature" flags="QStyleOptionToolButton::ToolButtonFeatures">
-    <reject-enum-value name="MenuButtonPopup"/>
-  </enum-type>
-  <enum-type name="QStyleOptionViewItem::Position"/>
-  <enum-type name="QStyleOptionViewItem::StyleOptionType"/>
-  <enum-type name="QStyleOptionViewItem::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionViewItemV2::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionViewItemV2::ViewItemFeature" flags="QStyleOptionViewItemV2::ViewItemFeatures"/>
-  <enum-type name="QSystemTrayIcon::ActivationReason"/>
-  <enum-type name="QSystemTrayIcon::MessageIcon"/>
-  <enum-type name="QTabBar::Shape"/>
-  <enum-type name="QTabWidget::TabPosition"/>
-  <enum-type name="QTabWidget::TabShape"/>
-  <enum-type name="QTableWidgetItem::ItemType"/>
-  <enum-type name="QTabletEvent::PointerType"/>
-  <enum-type name="QTabletEvent::TabletDevice"/>
-  <enum-type name="QTextCharFormat::UnderlineStyle"/>
-  <enum-type name="QTextCharFormat::VerticalAlignment"/>
-  <enum-type name="QTextCursor::MoveMode"/>
-  <enum-type name="QTextCursor::MoveOperation"/>
-  <enum-type name="QTextCursor::SelectionType"/>
-  <enum-type name="QTextDocument::FindFlag" flags="QTextDocument::FindFlags"/>
-  <enum-type name="QTextDocument::MetaInformation"/>
-  <enum-type name="QTextDocument::ResourceType"/>
-  <enum-type name="QTextEdit::AutoFormattingFlag" flags="QTextEdit::AutoFormatting"/>
-  <enum-type name="QTextEdit::LineWrapMode"/>
-  <enum-type name="QTextFormat::ObjectTypes"/>
-  <enum-type name="QTextFormat::PageBreakFlag" flags="QTextFormat::PageBreakFlags"/>
-  <enum-type name="QTextFrameFormat::Position"/>
-  <enum-type name="QTextFrameFormat::BorderStyle"/>
-  <enum-type name="QTextItem::RenderFlag" flags="QTextItem::RenderFlags"/>
-  <enum-type name="QTextLayout::CursorMode"/>
-  <enum-type name="QTextLength::Type"/>
-  <enum-type name="QTextLine::CursorPosition"/>
-  <enum-type name="QTextLine::Edge"/>
-  <enum-type name="QTextListFormat::Style"/>
-  <enum-type name="QTextOption::Flag" flags="QTextOption::Flags"/>
-  <enum-type name="QTextOption::WrapMode"/>
-  <enum-type name="QTextOption::TabType"/>
-  <enum-type name="QToolButton::ToolButtonPopupMode"/>
-  <enum-type name="QTreeWidgetItem::ItemType"/>
-  <enum-type name="QTreeWidgetItemIterator::IteratorFlag" flags="QTreeWidgetItemIterator::IteratorFlags"/>
-  <enum-type name="QValidator::State"/>
-  <enum-type name="QWidget::RenderFlag" flags="QWidget::RenderFlags"/>
-  <enum-type name="QWorkspace::WindowOrder"/>
-  <enum-type name="QDoubleValidator::Notation"/>
-  <enum-type name="QGraphicsScene::SceneLayer" flags="QGraphicsScene::SceneLayers"/>
-  <enum-type name="QStyleOptionToolBoxV2::SelectedPosition"/>
-  <enum-type name="QStyleOptionToolBoxV2::StyleOptionVersion"/>
-  <enum-type name="QStyleOptionToolBoxV2::TabPosition"/>
-  <enum-type name="QStyleOptionViewItemV3::StyleOptionVersion"/>
-  <enum-type name="QTransform::TransformationType"/>
-  <enum-type name="QTreeWidgetItem::ChildIndicatorPolicy"/>
-  <enum-type name="QWizard::WizardOption" flags="QWizard::WizardOptions"/>
-  <enum-type name="QWizard::WizardPixmap"/>
-  <enum-type name="QWizard::WizardStyle"/>
-  <enum-type name="QImageIOPlugin::Capability" flags="QImageIOPlugin::Capabilities"/>
-  <enum-type name="QStackedLayout::StackingMode"/>
-
-  <enum-type name="QWizard::WizardButton">
-    <reject-enum-value name="NStandardButtons"/>
-    <reject-enum-value name="NButtons"/>
-  </enum-type>
-
-  <enum-type name="QAccessible::Action">
-    <reject-enum-value name="FirstStandardAction"/>
-    <reject-enum-value name="LastStandardAction"/>
-  </enum-type>
-
-  <enum-type name="QBoxLayout::Direction">
-    <reject-enum-value name="Down"/>
-    <reject-enum-value name="Up"/>
-  </enum-type>
-
-
-  <enum-type name="QClipboard::Mode">
-    <reject-enum-value name="LastMode"/>
-  </enum-type>
-
-  <enum-type name="QDialogButtonBox::StandardButton" flags="QDialogButtonBox::StandardButtons">
-    <reject-enum-value name="FirstButton"/>
-    <reject-enum-value name="LastButton"/>
-    <reject-enum-value name="YesAll"/>
-    <reject-enum-value name="NoAll"/>
-    <reject-enum-value name="Default"/>
-    <reject-enum-value name="Escape"/>
-    <reject-enum-value name="FlagMask"/>
-    <reject-enum-value name="ButtonMask"/>
-  </enum-type>
-
-  <enum-type name="QDockWidget::DockWidgetFeature" flags="QDockWidget::DockWidgetFeatures"/>
-
-  <enum-type name="QFont::StyleHint">
-    <reject-enum-value name="SansSerif"/>
-    <reject-enum-value name="Serif"/>
-    <reject-enum-value name="TypeWriter"/>
-    <reject-enum-value name="Decorative"/>
-  </enum-type>
-
-  <enum-type name="QFontDatabase::WritingSystem">
-    <reject-enum-value name="Other"/>
-  </enum-type>
-
-  <enum-type name="QHeaderView::ResizeMode">
-    <reject-enum-value name="Custom"/>
-  </enum-type>
-
-
-  <enum-type name="QMessageBox::StandardButton" flags="QMessageBox::StandardButtons">
-    <reject-enum-value name="FirstButton"/>
-    <reject-enum-value name="LastButton"/>
-    <reject-enum-value name="YesAll"/>
-    <reject-enum-value name="NoAll"/>
-  </enum-type>
-
-  <enum-type name="QPalette::ColorGroup">
-    <reject-enum-value name="Normal"/>
-  </enum-type>
-
-  <enum-type name="QPalette::ColorRole">
-    <reject-enum-value name="NColorRoles"/>
-    <reject-enum-value name="Foreground"/>
-    <reject-enum-value name="Background"/>
-  </enum-type>
-
-  <enum-type name="QPrinter::PageSize">
-    <reject-enum-value name="NPageSize"/>
-    <reject-enum-value name="NPaperSize"/>
-  </enum-type>
-
-  <enum-type name="QSlider::TickPosition">
-<!--    <reject-enum-value name="TicksLeft"/>
-    <reject-enum-value name="TicksRight"/>-->
-  </enum-type>
-
-  <enum-type name="QStyle::StyleHint" extensible="yes">
-    <reject-enum-value name="SH_ScrollBar_StopMouseOverSlider"/>
-  </enum-type>
-
-
-  <enum-type name="QTextFormat::FormatType"/>
-
-  <enum-type name="QTextFormat::Property">
-    <reject-enum-value name="FontSizeIncrement"/>
-    <reject-enum-value name="FirstFontProperty"/>
-    <reject-enum-value name="LastFontProperty"/>
-  </enum-type>
-
-  <value-type name="QTransform">
-    <modify-function signature="operator=(QTransform)" remove="all"/>
-    <modify-function signature="map(int,int,int*,int*)const" remove="all"/>
-    <modify-function signature="map(double,double,double*,double*)const" remove="all"/>
-
-    <modify-function signature="operator*=(double)" access="private"/>
-    <modify-function signature="operator+=(double)" access="private"/>
-    <modify-function signature="operator-=(double)" access="private"/>
-    <modify-function signature="operator/=(double)" access="private"/>
-    <modify-function signature="operator*(QTransform)const" rename="multiplied"/>
-    <modify-function signature="operator*=(QTransform)" access="private"/>
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QTransform___" quote-before-line="}// class"/>
-        </inject-code>
-
-        <modify-function signature="inverted(bool*)const">
-            <access modifier="private"/>
-            <modify-argument index="1">
-                <remove-default-expression/>
-            </modify-argument>
-        </modify-function>
-
-        <modify-function signature="rotate(double,Qt::Axis)">
-            <modify-argument index="1">
-                <remove-default-expression/>
-            </modify-argument>
-            <access modifier="private"/>
-            <rename to="rotate_private"/>
-        </modify-function>
-        <inject-code>
-    /**
-     * Rotates the transformation around the given axis.
-     *
-     * @return The rotated transformation.
-     */
-        <insert-template name="core.private_function_return_self">
-            <replace from="%RETURN_TYPE" to="QTransform"/>
-            <replace from="%FUNCTION_NAME" to="rotate"/>
-            <replace from="%ARGUMENTS" to="double angle, Qt.Axis axis"/>
-            <replace from="%ARGUMENT_NAMES" to="angle, axis"/>
-        </insert-template>
-
-    /**
-     * Rotates the transformation around the z-axis.
-     *
-     * @return The rotated transformation.
-     */
-        <insert-template name="core.private_function_return_self">
-            <replace from="%RETURN_TYPE" to="QTransform"/>
-            <replace from="%FUNCTION_NAME" to="rotate"/>
-            <replace from="%ARGUMENTS" to="double angle"/>
-            <replace from="%ARGUMENT_NAMES" to="angle"/>
-        </insert-template>
-        </inject-code>
-
-        <modify-function signature="rotateRadians(double,Qt::Axis)">
-        <modify-argument index="1">
-            <remove-default-expression/>
-        </modify-argument>
-        <access modifier="private"/>
-        <rename to="rotateRadians_private"/>
-    </modify-function>
-    <inject-code>
-    /**
-     * Rotates the transformation around the given axis.
-     *
-     * @return The rotated transformation.
-     */
-        <insert-template name="core.private_function_return_self">
-            <replace from="%RETURN_TYPE" to="QTransform"/>
-            <replace from="%FUNCTION_NAME" to="rotateRadians"/>
-            <replace from="%ARGUMENTS" to="double angle, Qt.Axis axis"/>
-            <replace from="%ARGUMENT_NAMES" to="angle, axis"/>
-        </insert-template>
-
-    /**
-     * Rotates the transformation around the z-axis.
-     *
-     * @return The rotated transformation.
-     */
-        <insert-template name="core.private_function_return_self">
-            <replace from="%RETURN_TYPE" to="QTransform"/>
-            <replace from="%FUNCTION_NAME" to="rotateRadians"/>
-            <replace from="%ARGUMENTS" to="double angle"/>
-            <replace from="%ARGUMENT_NAMES" to="angle"/>
-        </insert-template>
-    </inject-code>
-
-    <modify-function signature="scale(double,double)">
-        <access modifier="private"/>
-        <rename to="scale_private"/>
-    </modify-function>
-    <inject-code>
-    /**
-     * Scales the transformation using x and y.
-     *
-     * @return The scaled transformation.
-     */
-        <insert-template name="core.private_function_return_self">
-            <replace from="%RETURN_TYPE" to="QTransform"/>
-            <replace from="%FUNCTION_NAME" to="scale"/>
-            <replace from="%ARGUMENTS" to="double x, double y"/>
-            <replace from="%ARGUMENT_NAMES" to="x, y"/>
-        </insert-template>
-    </inject-code>
-
-    <modify-function signature="shear(double,double)">
-        <access modifier="private"/>
-        <rename to="shear_private"/>
-    </modify-function>
-    <inject-code>
-    /**
-      * Shears the transformation using x and y.
-      *
-      * @return The sheared transformation.
-      */
-        <insert-template name="core.private_function_return_self">
-            <replace from="%RETURN_TYPE" to="QTransform"/>
-            <replace from="%FUNCTION_NAME" to="shear"/>
-            <replace from="%ARGUMENTS" to="double x, double y"/>
-            <replace from="%ARGUMENT_NAMES" to="x, y"/>
-        </insert-template>
-    </inject-code>
-
-    <modify-function signature="translate(double,double)">
-        <access modifier="private"/>
-        <rename to="translate_private"/>
-    </modify-function>
-    <inject-code>
-    /**
-     * Translates the transformation using x and y.
-     *
-     * @return The translated transformation.
-     */
-        <insert-template name="core.private_function_return_self">
-            <replace from="%RETURN_TYPE" to="QTransform"/>
-            <replace from="%FUNCTION_NAME" to="translate"/>
-            <replace from="%ARGUMENTS" to="double x, double y"/>
-            <replace from="%ARGUMENT_NAMES" to="x, y"/>
-        </insert-template>
-    </inject-code>
-
-    <modify-function signature="quadToQuad(QPolygonF,QPolygonF,QTransform&amp;)">
-        <access modifier="private"/>
-        <rename to="quadToQuadPrivate"/>
-    </modify-function>
-
-    <modify-function signature="quadToSquare(QPolygonF,QTransform&amp;)">
-        <access modifier="private"/>
-        <rename to="quadToSquarePrivate"/>
-    </modify-function>
-
-    <modify-function signature="squareToQuad(QPolygonF,QTransform&amp;)">
-        <access modifier="private"/>
-        <rename to="squareToQuadPrivate"/>
-    </modify-function>
-
-    </value-type>
-
-  <value-type name="QStyleOption" delete-in-main-thread="yes" polymorphic-base="yes" polymorphic-id-expression="%1-&gt;type == QStyleOption::SO_Default">
-      <modify-function signature="operator=(QStyleOption)" remove="all"/>
-      <modify-function signature="init(const QWidget*)" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-field name="version">
-          <rename to="version_"/>
-      </modify-field>
-  </value-type>
-  <value-type name="QStyleOptionGraphicsItem" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionGraphicsItem::Type &amp;&amp; %1-&gt;version == QStyleOptionGraphicsItem::Version"/>
-  <value-type name="QStyleOptionSizeGrip" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionSizeGrip::Type &amp;&amp; %1-&gt;version == QStyleOptionSizeGrip::Version"/>
-  <value-type name="QStyleOptionButton" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionButton::Type &amp;&amp; %1-&gt;version == QStyleOptionButton::Version"/>
-  <value-type name="QStyleOptionComboBox" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionComboBox::Type &amp;&amp; %1-&gt;version == QStyleOptionComboBox::Version"/>
-  <value-type name="QStyleOptionComplex" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionComplex::Type &amp;&amp; %1-&gt;version == QStyleOptionComplex::Version"/>
-  <value-type name="QStyleOptionDockWidget" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionDockWidget::Type &amp;&amp; %1-&gt;version == QStyleOptionDockWidget::Version"/>
-  <value-type name="QStyleOptionDockWidgetV2" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionDockWidgetV2::Type &amp;&amp; %1-&gt;version == QStyleOptionDockWidgetV2::Version">
-      <modify-function signature="operator=(QStyleOptionDockWidget)" remove="all"/>
-  </value-type>
-  <value-type name="QStyleOptionFocusRect" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionFocusRect::Type &amp;&amp; %1-&gt;version == QStyleOptionFocusRect::Version"/>
-  <value-type name="QStyleOptionFrame" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionFrame::Type &amp;&amp; %1-&gt;version == QStyleOptionFrame::Version"/>
-
-  <value-type name="QStyleOptionFrameV2" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionFrameV2::Type &amp;&amp; %1-&gt;version == QStyleOptionFrameV2::Version">
-    <modify-function signature="operator=(QStyleOptionFrame)" remove="all"/>
-  </value-type>
-
-  <value-type name="QStyleOptionGroupBox" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionGroupBox::Type &amp;&amp; %1-&gt;version == QStyleOptionGroupBox::Version"/>
-  <value-type name="QStyleOptionHeader" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionHeader::Type &amp;&amp; %1-&gt;version == QStyleOptionHeader::Version"/>
-  <value-type name="QStyleOptionMenuItem" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionMenuItem::Type &amp;&amp; %1-&gt;version == QStyleOptionMenuItem::Version"/>
-  <value-type name="QStyleOptionProgressBar" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionProgressBar::Type &amp;&amp; %1-&gt;version == QStyleOptionProgressBar::Version"/>
-
-  <value-type name="QStyleOptionProgressBarV2" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionProgressBarV2::Type &amp;&amp; %1-&gt;version == QStyleOptionProgressBarV2::Version">
-    <modify-function signature="operator=(QStyleOptionProgressBar)" remove="all"/>
-  </value-type>
-
-  <value-type name="QStyleOptionRubberBand" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionRubberBand::Type &amp;&amp; %1-&gt;version == QStyleOptionRubberBand::Version"/>
-  <value-type name="QStyleOptionSlider" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionSlider::Type &amp;&amp; %1-&gt;version == QStyleOptionSlider::Version"/>
-  <value-type name="QStyleOptionSpinBox" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionSpinBox::Type &amp;&amp; %1-&gt;version == QStyleOptionSpinBox::Version"/>
-  <value-type name="QStyleOptionTab" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionTab::Type &amp;&amp; %1-&gt;version == QStyleOptionTab::Version"/>
-  <value-type name="QStyleOptionTabV2" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionTabV2::Type &amp;&amp; %1-&gt;version == QStyleOptionTabV2::Version">
-    <modify-function signature="operator=(const QStyleOptionTab &amp;)" remove="all"/>
-  </value-type>
-  <value-type name="QStyleOptionTabBarBase" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionTabBarBase::Type &amp;&amp; %1-&gt;version == QStyleOptionTabBarBase::Version"/>
-  <value-type name="QStyleOptionTabWidgetFrame" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionTabWidgetFrame::Type &amp;&amp; %1-&gt;version == QStyleOptionTabWidgetFrame::Version"/>
-  <value-type name="QStyleOptionTitleBar" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionTitleBar::Type &amp;&amp; %1-&gt;version == QStyleOptionTitleBar::Version"/>
-  <value-type name="QStyleOptionToolBar" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionToolBar::Type &amp;&amp; %1-&gt;version == QStyleOptionToolBar::Version"/>
-  <value-type name="QStyleOptionToolBox" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionToolBox::Type &amp;&amp; %1-&gt;version == QStyleOptionToolBox::Version"/>
-  <value-type name="QStyleOptionToolBoxV2" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionToolBoxV2::Type &amp;&amp; %1-&gt;version == QStyleOptionToolBoxV2::Version">
-    <modify-function signature="operator=(QStyleOptionToolBox)" remove="all"/>
-  </value-type>
-  <value-type name="QStyleOptionToolButton" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionToolButton::Type &amp;&amp; %1-&gt;version == QStyleOptionToolButton::Version"/>
-  <value-type name="QStyleOptionViewItem" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionViewItem::Type &amp;&amp; %1-&gt;version == QStyleOptionViewItem::Version"/>
-  <value-type name="QStyleOptionViewItemV2" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionViewItemV2::Type &amp;&amp; %1-&gt;version == QStyleOptionViewItemV2::Version">
-    <modify-function signature="operator=(QStyleOptionViewItem)" remove="all"/>
-  </value-type>
-  <value-type name="QStyleOptionViewItemV3" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionViewItemV3::Type &amp;&amp; %1-&gt;version == QStyleOptionViewItemV3::Version">
-    <modify-function signature="operator=(QStyleOptionViewItem)" remove="all"/>
-  </value-type>
-  <value-type name="QStyleOptionViewItemV4" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionViewItemV4::Type &amp;&amp; %1-&gt;version == QStyleOptionViewItemV4::Version">
-    <modify-function signature="operator=(QStyleOptionViewItem)" remove="all"/>
-  </value-type>
-  <value-type name="QTextFragment" delete-in-main-thread="yes">
-    <modify-function signature="operator=(QTextFragment)" remove="all"/>
-  </value-type>
-  <value-type name="QBitmap" delete-in-main-thread="yes">
-    <modify-function signature="operator=(const QPixmap &amp;)" remove="all"/>
-    <modify-function signature="QBitmap(QString,const char*)" access="private">
-        <modify-argument index="2"> <remove-default-expression/> </modify-argument>
-    </modify-function>
-
-    <modify-function signature="fromData(QSize,const unsigned char*,QImage::Format)">
-        <access modifier="private"/>
-        <modify-argument index="3">
-            <remove-default-expression/>
-        </modify-argument>
-    </modify-function>
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QBitmap___" quote-before-line="}// class"/>
-        </inject-code>
-    </value-type>
-  <value-type name="QTextInlineObject" delete-in-main-thread="yes"/>
-  <value-type name="QSizePolicy"/>
-  <value-type name="QTableWidgetSelectionRange"/>
-  <value-type name="QTextDocumentFragment" delete-in-main-thread="yes">
-    <modify-function signature="operator=(QTextDocumentFragment)" remove="all"/>
-  </value-type>
-  <value-type name="QTextOption" delete-in-main-thread="yes">
-    <modify-function signature="operator=(const QTextOption &amp;)" remove="all"/>
-  </value-type>
-  <value-type name="QTextLine" delete-in-main-thread="yes">
-    <modify-function signature="cursorToX(int*,QTextLine::Edge)const">
-        <remove/>
-    </modify-function>
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QTextLine___" quote-before-line="}// class"/>
-        </inject-code>
-    </value-type>
-  <value-type name="QTextTableFormat" delete-in-main-thread="yes"/>
-  <value-type name="QTextImageFormat" delete-in-main-thread="yes"/>
-  <value-type name="QTextFrameFormat" delete-in-main-thread="yes">
-    <modify-function signature="isValid()const" access="non-final"/>
-  </value-type>
-  <value-type name="QTextLength" delete-in-main-thread="yes"/>
-  <value-type name="QItemSelectionRange">
-      <modify-function signature="intersect(QItemSelectionRange)const" remove="all"/> <!--### Obsolete in 4.3-->
-  </value-type>
-
-  <value-type name="QPainterPath">
-    <modify-function signature="operator=(QPainterPath)" remove="all"/>
-  </value-type>
-  <value-type name="QPalette">
-    <modify-function signature="operator=(const QPalette&amp;)" remove="all"/>
-
-      <modify-function signature="QPalette(QColor, QColor, QColor, QColor, QColor, QColor, QColor)" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="background()const" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="foreground()const" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="serialNumber()const" remove="all"/> <!--### Obsolete in 4.3-->
-  </value-type>
-  <value-type name="QKeySequence">
-    <modify-function signature="operator=(QKeySequence)" remove="all"/>
-    <modify-function signature="operator int()const" access="private"/>
-    <modify-function signature="operator[](uint)const" access="private"/>
-
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QKeySequence___" quote-before-line="}// class"/>
-        </inject-code>
-
-    </value-type>
-
-  <value-type name="QPicture" delete-in-main-thread="yes">
-    <modify-function signature="operator=(QPicture)" remove="all"/>
-    <modify-function signature="pictureFormat(QString)">
-        <remove/>
-    </modify-function>
-
-    <modify-function signature="inputFormatList()" remove="all"/> <!--### Obsolete in 4.3-->
-    <modify-function signature="inputFormats()" remove="all"/> <!--### Obsolete in 4.3-->
-    <modify-function signature="outputFormatList()" remove="all"/> <!--### Obsolete in 4.3-->
-    <modify-function signature="outputFormats()" remove="all"/> <!--### Obsolete in 4.3-->
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QPicture___" quote-before-line="}// class"/>
-        </inject-code>
-        <extra-includes>
-            <include file-name="qt.core.QIODevice" location="java"/>
-        </extra-includes>
-        <modify-function signature="load(QIODevice*,const char*)">
-            <access modifier="private"/>
-            <modify-argument index="2">
-                <remove-default-expression/>
-            </modify-argument>
-        </modify-function>
-
-
-        <modify-function signature="load(QString,const char*)">
-            <access modifier="private"/>
-            <modify-argument index="2">
-                <remove-default-expression/>
-            </modify-argument>
-        </modify-function>
-
-
-        <modify-function signature="save(QIODevice*,const char*)">
-            <access modifier="private"/>
-            <modify-argument index="2">
-                <remove-default-expression/>
-            </modify-argument>
-        </modify-function>
-
-
-        <modify-function signature="save(QString,const char*)">
-            <access modifier="private"/>
-            <modify-argument index="2">
-                <remove-default-expression/>
-            </modify-argument>
-        </modify-function>
-
-<!--
-        <modify-function signature="setData(const char*,uint)">
-            <modify-argument index="1">
-                <replace-type modified-type="byte[]"/>
-                <conversion-rule class="shell">
-                    jbyteArray %out = __jni_env-&gt;NewByteArray(%2);
-                    __jni_env-&gt;SetByteArrayRegion(%out, 0, %2, (jbyte *) %in);
-                </conversion-rule>
-                <conversion-rule class="native">
-                    char *%out = (char *) __jni_env-&gt;GetByteArrayElements((jbyteArray) %in, 0);
-                    char *__ptr = %out;
-                    Q_UNUSED(__ptr)
-                </conversion-rule>
-            </modify-argument>
-
-            <modify-argument index="2">
-                <remove-argument/>
-                <conversion-rule class="shell">
-                    // nothing
-                </conversion-rule>
-                <conversion-rule class="native">
-                    int %out = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>
--->
-        <modify-function signature="pictureFormat(QString)">
-            <remove/>
-        </modify-function>
-
-        <modify-function signature="data()const">
-            <access modifier="private"/>
-            <rename to="data_private"/>
-        </modify-function>
-
-    </value-type>
-
-  <value-type name="QRegion"> <!-- expense-limit="4096"> -->
-    <modify-function signature="operator=(QRegion)" remove="all"/>
-    <modify-function signature="operator&amp;=(QRegion)" remove="all"/>
-    <modify-function signature="operator+=(QRegion)" remove="all"/>
-    <modify-function signature="operator-=(QRegion)" remove="all"/>
-    <modify-function signature="operator^=(QRegion)" remove="all"/>
-    <modify-function signature="operator|=(QRegion)" remove="all"/>
-    <modify-function signature="operator&amp;(QRegion)const" remove="all"/>
-    <modify-function signature="operator+(QRegion)const" remove="all"/>
-    <modify-function signature="operator-(QRegion)const" remove="all"/>
-    <modify-function signature="operator^(QRegion)const" remove="all"/>
-    <modify-function signature="operator|(QRegion)const" remove="all"/>
-    <modify-function signature="eor(QRegion)const" remove="all"/> <!--### Obsolete in 4.3-->
-    <modify-function signature="intersect(QRegion)const" remove="all"/> <!--### Obsolete in 4.3-->
-    <modify-function signature="subtract(QRegion)const" remove="all"/> <!--### Obsolete in 4.3-->
-    <modify-function signature="unite(QRegion)const" remove="all"/> <!--### Obsolete in 4.3-->
-    <modify-function signature="operator&amp;=(QRect)" remove="all"/>
-    <modify-function signature="operator+=(QRect)" remove="all"/>
-
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QRegion___" quote-before-line="}// class"/>
-        </inject-code>
-        <modify-function signature="setRects(const QRect*,int)">
-            <access modifier="private"/>
-        </modify-function>
-
-    </value-type>
-
-  <value-type name="QTextBlock" delete-in-main-thread="yes">
-    <modify-function signature="operator=(QTextBlock)" remove="all"/>
-    <modify-function signature="setUserData(QTextBlockUserData *)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-     </modify-function>
-  </value-type>
-  <value-type name="QTextBlockFormat" delete-in-main-thread="yes"/>
-  <value-type name="QTextTableCellFormat" delete-in-main-thread="yes"/>
-  <value-type name="QTextCharFormat" delete-in-main-thread="yes">
-    <modify-function signature="isValid()const" access="non-final"/>
-
-      <modify-function signature="anchorName()const" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="setAnchorName(QString)" remove="all"/> <!--### Obsolete in 4.3-->
-  </value-type>
-  <value-type name="QTextFormat" delete-in-main-thread="yes">
-    <modify-function signature="operator=(QTextFormat)" remove="all"/>
-    <modify-function signature="isValid()const" access="non-final"/>
-
-  </value-type>
-
-  <value-type name="QTextListFormat" delete-in-main-thread="yes"/>
-  <value-type name="QPolygon">
-    <extra-includes>
-        <include file-name="qt.core.QPoint" location="java"/>
-    </extra-includes>
-    
-    <modify-function signature="QPolygon(int, const int *)" remove="all"/>
-    <modify-function signature="operator+(QVector&lt;QPoint&gt;)const" remove="all"/>
-    <modify-function signature="operator&lt;&lt;(QPoint)" remove="all"/>
-    <modify-function signature="operator&lt;&lt;(QVector&lt;QPoint&gt;)" remove="all"/>
-    
-    <inject-code class="java">
-    public final void insert(int i, QPoint t) {
-        qtd_QPolygon_insert_int_QPoint(nativeId, i, t);
-    }
-    
-    public final void insert(int i, int n, QPoint t) {
-        qtd_QPolygon_insert_int_int_QPoint(nativeId, i, n, t);
-    }
-    </inject-code>
-    <inject-code class="java-free">
-private extern(C) void  qtd_QPolygon_insert_int_QPoint(void* __this_nativeId,
- int i0,
- QPoint t1);
-private extern(C) void  qtd_QPolygon_insert_int_int_QPoint(void* __this_nativeId,
- int i0,
- int n1,
- QPoint t2);
-    </inject-code>
-    <inject-code class="native">
-// QPolygon::insert(int i, const QPoint &amp; t)
-extern "C" DLL_PUBLIC void qtd_QPolygon_insert_int_QPoint
-(void* __this_nativeId,
- int i0,
- QPoint t1)
-{
-    QPolygon *__qt_this = (QPolygon *) __this_nativeId;
-    __qt_this->insert((int )i0, (const QPoint&amp; )t1);
-
-}
-
-// QPolygon::insert(int i, int n, const QPoint &amp; t)
-extern "C" DLL_PUBLIC void qtd_QPolygon_insert_int_int_QPoint
-(void* __this_nativeId,
- int i0,
- int n1,
- QPoint t2)
-{
-    QPolygon *__qt_this = (QPolygon *) __this_nativeId;
-    __qt_this->insert((int )i0, (int )n1, (const QPoint&amp; )t2);
-
-}
-    </inject-code>
-    
-    <inject-code>
-        <import-file name="typesystem_gui-java.java" quote-after-line="class QPolygon___" quote-before-line="}// class"/>
-    </inject-code>
-<!-- qtd2
-        <inject-code class="native">
-      extern "C" JNIEXPORT void JNICALL QTJAMBI_FUNCTION_PREFIX(Java_com_trolltech_qt_gui_QPolygon_add_1private)
-      (JNIEnv *__jni_env, jobject, jlong nativeId, jint x, jint y)
-      {
-          Q_UNUSED(__jni_env);
-          QPolygon *polygon = (QPolygon *) qtjambi_from_jlong(nativeId);
-          if (!polygon)
-              return;
-          *polygon &lt;&lt; QPoint(x, y);
-      }
-        </inject-code> -->
-    </value-type>
-
-  <value-type name="QPolygonF">
-    <modify-function signature="operator+(QVector&lt;QPointF&gt;)const" remove="all"/>
-    <modify-function signature="operator&lt;&lt;(QPointF)" remove="all"/>
-    <modify-function signature="operator&lt;&lt;(QVector&lt;QPointF&gt;)" remove="all"/>
-  
-        <extra-includes>
-            <include file-name="qt.core.QPoint" location="java"/>
-        </extra-includes>
-
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QPolygonF___" quote-before-line="}// class"/>
-        </inject-code>
-<!--
-        <inject-code class="native">
-      extern "C" JNIEXPORT void JNICALL QTJAMBI_FUNCTION_PREFIX(Java_com_trolltech_qt_gui_QPolygonF_add_1private)
-      (JNIEnv *__jni_env, jobject, jlong nativeId, jdouble x, jdouble y)
-      {
-          Q_UNUSED(__jni_env);
-          QPolygonF *polygon = (QPolygonF *) qtjambi_from_jlong(nativeId);
-          if (!polygon)
-              return;
-          *polygon &lt;&lt; QPointF(x, y);
-      }
-        </inject-code>
-		-->
-    <inject-code class="java">
-    public final void insert(int i, QPointF t) {
-        qtd_QPolygonF_insert_int_QPointF(nativeId, i, t);
-    }
-
-    public final void insert(int i, int n, QPointF t) {
-        qtd_QPolygonF_insert_int_int_QPointF(nativeId, i, n, t);
-    }
-    </inject-code>
-    <inject-code class="java-free">
-private extern(C) void  qtd_QPolygonF_insert_int_QPointF(void* __this_nativeId,
- int i0,
- QPointF t1);
-private extern(C) void  qtd_QPolygonF_insert_int_int_QPointF(void* __this_nativeId,
- int i0,
- int n1,
- QPointF t2);
-    </inject-code>
-    <inject-code class="native">
-// QPolygonF::insert(int i, const QPointF &amp; t)
-extern "C" DLL_PUBLIC void qtd_QPolygonF_insert_int_QPointF
-(void* __this_nativeId,
- int i0,
- QPointF t1)
-{
-    QPolygonF *__qt_this = (QPolygonF *) __this_nativeId;
-    __qt_this->insert((int )i0, (const QPointF&amp; )t1);
-
-}
-
-// QPolygonF::insert(int i, int n, const QPointF &amp; t)
-extern "C" DLL_PUBLIC void qtd_QPolygonF_insert_int_int_QPointF
-(void* __this_nativeId,
- int i0,
- int n1,
- QPointF t2)
-{
-    QPolygonF *__qt_this = (QPolygonF *) __this_nativeId;
-    __qt_this->insert((int )i0, (int )n1, (const QPointF&amp; )t2);
-
-}
-    </inject-code>
-    </value-type>
-
-  <value-type name="QIcon" delete-in-main-thread="yes">
-
-    <inject-code class="java">
-        <insert-template name="gui.class_from_variant_java">
-            <replace from="%CLASS_NAME" to="QIcon"/>
-        </insert-template>
-
-    </inject-code>   
-    <inject-code class="java-free">
-        <insert-template name="gui.class_from_variant_java_free">
-            <replace from="%CLASS_NAME" to="QIcon"/>
-        </insert-template>
-    </inject-code>
-    <inject-code class="native">
-        <insert-template name="gui.class_from_variant_native">
-            <replace from="%CLASS_NAME" to="QIcon"/>
-        </insert-template>
-    </inject-code>
-
-    <modify-function signature="operator=(QIcon)" remove="all"/>
-    <modify-function signature="serialNumber()const" remove="all"/> <!--### Obsolete in 4.3-->
-    <modify-function signature="QIcon(QIconEngineV2 *)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="QIcon(QIconEngine *)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="operator QVariant()const" access="private"/>
-    <inject-code class="java">
-        public final QVariant toVariant() {
-            return operator_cast_QVariant();
-        }
-    </inject-code>
-
-  </value-type>
-
-  <value-type name="QTextFrame::iterator" delete-in-main-thread="yes">
-    <include file-name="QTextFrame" location="global"/>
-    <modify-function signature="operator++(int)" remove="all"/>
-    <modify-function signature="operator--(int)" remove="all"/>
-    <modify-function signature="operator=(QTextFrame::iterator)" remove="all"/>
-    <modify-function signature="operator++()" access="private"/>
-    <modify-function signature="operator--()" access="private"/>
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QTextFrame_iterator___" quote-before-line="}// class"/>
-        </inject-code>
-
-    </value-type>
-
-  <value-type name="QTreeWidgetItemIterator" delete-in-main-thread="yes">
-    <custom-constructor>
-    return new QTreeWidgetItemIterator(*copy);
-    </custom-constructor>
-    <custom-destructor>
-    delete copy;
-    </custom-destructor>
-    <modify-function signature="operator=(QTreeWidgetItemIterator)" remove="all"/>
-    <modify-function signature="operator++(int)" remove="all"/>
-    <modify-function signature="operator--(int)" remove="all"/>
-    <modify-function signature="operator+=(int)" access="private"/>
-    <modify-function signature="operator-=(int)" access="private"/>
-    <modify-function signature="operator++()" access="private"/>
-    <modify-function signature="operator--()" access="private"/>
-    <modify-function signature="operator*()const" access="private"/>
-   
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QTreeWidgetItemIterator___" quote-before-line="}// class"/>
-        </inject-code>
-
-    </value-type>
-
-  <value-type name="QTextBlock::iterator" delete-in-main-thread="yes">
-    <include file-name="QTextBlock" location="global"/>
-
-    <modify-function signature="operator++()" access="private"/>
-    <modify-function signature="operator--()" access="private"/>
-    <modify-function signature="operator++(int)" remove="all"/>
-    <modify-function signature="operator--(int)" remove="all"/>
-   
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QTextBlock_iterator___" quote-before-line="}// class"/>
-        </inject-code>
-
-    </value-type>
-
-  <value-type name="QAbstractTextDocumentLayout::PaintContext" delete-in-main-thread="yes">
-    <include file-name="QAbstractTextDocumentLayout" location="global"/>
-  </value-type>
-  <value-type name="QAbstractTextDocumentLayout::Selection" delete-in-main-thread="yes"/>
-
-  <value-type name="QPixmap" delete-in-main-thread="yes">
-    <modify-function signature="operator=(QPixmap)" remove="all"/>
-    <modify-function signature="operator!()const" remove="all"/>
-    <modify-function signature="operator QVariant()const" access="private"/>
-    <modify-function signature="QPixmap(const char **)" access="private"/>
-    <modify-function signature="serialNumber()const" remove="all"/> <!--### Obsolete in 4.3-->
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QPixmap___" quote-before-line="}// class"/>
-        </inject-code>
-        <modify-function signature="fill(const QColor &amp;)">
-            <modify-argument index="1">
-                <replace-default-expression with="QColor.White"/>
-            </modify-argument>
-        </modify-function>
-
-
-        <extra-includes>
-            <include file-name="QBitmap" location="global"/>
-            <include file-name="QMatrix" location="global"/>
-        </extra-includes>
-        
-    <inject-code class="java">
-        <insert-template name="gui.class_from_variant_java">
-            <replace from="%CLASS_NAME" to="QPixmap"/>
-        </insert-template>
-    </inject-code>   
-    <inject-code class="java-free">
-        <insert-template name="gui.class_from_variant_java_free">
-            <replace from="%CLASS_NAME" to="QPixmap"/>
-        </insert-template>
-    </inject-code>
-    <inject-code class="native">
-        <insert-template name="gui.class_from_variant_native_shell">
-            <replace from="%CLASS_NAME" to="QPixmap"/>
-        </insert-template>
-    </inject-code>
-
-        <modify-function signature="save(QIODevice *, const char *, int) const">
-            <access modifier="private"/>
-            <rename to="private_save"/>
-            <modify-argument index="2">
-                <remove-default-expression/>
-            </modify-argument>
-            <modify-argument index="3">
-                <remove-default-expression/>
-            </modify-argument>
-        </modify-function>
-        <inject-code>
-            <insert-template name="gui.pixmap_save">
-                <replace from="%INPUT_TYPE" to="qt.core.QIODevice"/>
-                <replace from="%INPUT_NAME" to="dev"/>
-            </insert-template>
-        </inject-code>
-
-        <modify-function signature="save(const QString &amp;, const char *, int) const">
-            <access modifier="private"/>
-            <rename to="private_save"/>
-            <modify-argument index="2">
-                <remove-default-expression/>
-            </modify-argument>
-            <modify-argument index="3">
-                <remove-default-expression/>
-            </modify-argument>
-        </modify-function>
-        <inject-code>
-            <insert-template name="gui.pixmap_save">
-                <replace from="%INPUT_TYPE" to="String"/>
-                <replace from="%INPUT_NAME" to="fileName"/>
-            </insert-template>
-        </inject-code>
-
-        <modify-function signature="QPixmap(QString,const char*,QFlags&lt;Qt::ImageConversionFlag&gt;)">
-            <access modifier="private"/>
-            <modify-argument index="2">
-                <remove-default-expression/>
-            </modify-argument>
-            <modify-argument index="3">
-                <remove-default-expression/>
-            </modify-argument>
-        </modify-function>
-        <inject-code>
-            <insert-template name="gui.pixmap_constructor"/>
-        </inject-code>
-
-        <modify-function signature="load(QString,const char*,QFlags&lt;Qt::ImageConversionFlag&gt;)">
-            <access modifier="private"/>
-            <modify-argument index="2">
-                <remove-default-expression/>
-            </modify-argument>
-            <modify-argument index="3">
-                <remove-default-expression/>
-            </modify-argument>
-        </modify-function>
-        <inject-code>
-            <insert-template name="gui.pixmap_load">
-                <replace from="%FUNCTION_NAME" to="load"/>
-                <replace from="%INPUT_TYPE" to="String"/>
-                <replace from="%INPUT_NAME" to="fileName"/>
-                <replace from="%OUTPUT_NAME" to="fileName"/>
-            </insert-template>
-        </inject-code>
-
-        <modify-function signature="loadFromData(const unsigned char*,uint,const char*,QFlags&lt;Qt::ImageConversionFlag&gt;)">
-            <access modifier="private"/>
-            <modify-argument index="3">
-                <remove-default-expression/>
-            </modify-argument>
-            <modify-argument index="4">
-                <remove-default-expression/>
-            </modify-argument>
-        </modify-function>
-        <inject-code>
-            <insert-template name="gui.pixmap_load">
-                <replace from="%FUNCTION_NAME" to="loadFromData"/>
-                <replace from="%INPUT_TYPE" to="byte[]"/>
-                <replace from="%INPUT_NAME" to="data"/>
-                <replace from="%OUTPUT_NAME" to="qt.internal.QtJambiInternal.byteArrayToNativePointer(data), data.length"/>
-            </insert-template>
-        </inject-code>
-
-        <modify-function signature="loadFromData(QByteArray,const char*,QFlags&lt;Qt::ImageConversionFlag&gt;)">
-            <access modifier="private"/>
-            <modify-argument index="2">
-                <remove-default-expression/>
-            </modify-argument>
-            <modify-argument index="3">
-                <remove-default-expression/>
-            </modify-argument>
-        </modify-function>
-        <inject-code>
-            <insert-template name="gui.pixmap_load">
-                <replace from="%FUNCTION_NAME" to="loadFromData"/>
-                <replace from="%INPUT_TYPE" to="qt.core.QByteArray"/>
-                <replace from="%INPUT_NAME" to="data"/>
-                <replace from="%OUTPUT_NAME" to="data"/>
-            </insert-template>
-        </inject-code>
-    </value-type>
-
-  <value-type name="QTextCursor" delete-in-main-thread="yes">
-    <extra-includes>
-        <include file-name="QTextBlock" location="global"/>
-        <include file-name="QTextDocumentFragment" location="global"/>
-    </extra-includes>
-    <modify-function signature="operator=(QTextCursor)" remove="all"/>
-    <modify-function signature="selectedTableCells(int*,int*,int*,int*)const">
-        <access modifier="private"/>
-    </modify-function>
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QTextCursor___" quote-before-line="}// class"/>
-        </inject-code>
-    </value-type>
-
-  <value-type name="QTextLayout::FormatRange">
-    <include file-name="QTextLayout" location="global"/>
-  </value-type>
-
-  <value-type name="QInputMethodEvent::Attribute">
-    <include file-name="QInputMethodEvent" location="global"/>
-    <custom-constructor>
-    return new QInputMethodEvent::Attribute(copy-&gt;type, copy-&gt;start, copy-&gt;length, copy-&gt;value);
-    </custom-constructor>
-    <custom-destructor>
-    delete copy;
-    </custom-destructor>
-  </value-type>
-
-  <value-type name="QItemSelection" delete-in-main-thread="yes">
-
-    <modify-function signature="operator+(const QList&lt;QItemSelectionRange&gt;&amp;)const" remove="all"/>
-    <modify-function signature="operator+=(const QList&lt;QItemSelectionRange&gt;&amp;)" remove="all"/>
-    <modify-function signature="operator+=(const QItemSelectionRange&amp;)" remove="all"/>
-    <modify-function signature="operator&lt;&lt;(const QList&lt;QItemSelectionRange&gt;&amp;)" remove="all"/>
-    <modify-function signature="operator&lt;&lt;(QItemSelectionRange)" remove="all"/>
-<!--  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QItemSelection___" quote-before-line="}// class"/>
-        </inject-code>
-        <modify-function signature="split(QItemSelectionRange,QItemSelectionRange,QItemSelection*)">
-            <access modifier="private"/>
-        </modify-function>
--->
-
-    </value-type>
-
-  <value-type name="QMatrix">
-      <extra-includes>
-        <include file-name="QPainterPath" location="global"/>
-      </extra-includes>
-
-      <modify-function signature="map(int,int,int*,int*)const" remove="all"/>
-      <modify-function signature="map(double,double,double*,double*)const" remove="all"/>
-      <modify-function signature="operator=(QMatrix)" remove="all"/>
-
-      <modify-function signature="operator*(QMatrix)const" access="private"/>
-      <modify-function signature="operator*=(QMatrix)" access="private"/>
-      <modify-function signature="rotate(double)" access="private" rename="rotate_private"/>
-      <modify-function signature="scale(double,double)" access="private" rename="scale_private"/>
-      <modify-function signature="shear(double,double)" access="private" rename="shear_private"/>
-      <modify-function signature="translate(double,double)" access="private" rename="translate_private"/>
-
-      <modify-function signature="inverted(bool*)const">
-        <access modifier="private"/>
-        <modify-argument index="1">
-            <remove-default-expression/>
-        </modify-argument>
-      </modify-function>
-
-    <inject-code>
-      <insert-template name="core.unary_other_type">
-        <replace from="%FUNCTION_NAME" to="rotate"/>
-        <replace from="%OUT_TYPE" to="QMatrix"/>
-        <replace from="%IN_TYPE" to="double"/>
-      </insert-template>
-
-      <insert-template name="core.private_function_return_self">
-        <replace from="%RETURN_TYPE" to="QMatrix"/>
-        <replace from="%FUNCTION_NAME" to="scale"/>
-        <replace from="%ARGUMENTS" to="double sx, double sy"/>
-        <replace from="%ARGUMENT_NAMES" to="sx, sy"/>
-      </insert-template>
-
-      <insert-template name="core.private_function_return_self">
-        <replace from="%RETURN_TYPE" to="QMatrix"/>
-        <replace from="%FUNCTION_NAME" to="shear"/>
-        <replace from="%ARGUMENTS" to="double sh, double sv"/>
-        <replace from="%ARGUMENT_NAMES" to="sh, sv"/>
-      </insert-template>
-
-      <insert-template name="core.private_function_return_self">
-        <replace from="%RETURN_TYPE" to="QMatrix"/>
-        <replace from="%FUNCTION_NAME" to="translate"/>
-        <replace from="%ARGUMENTS" to="double dx, double dy"/>
-        <replace from="%ARGUMENT_NAMES" to="dx, dy"/>
-      </insert-template>
-    </inject-code>
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QMatrix___" quote-before-line="}// class"/>
-        </inject-code>
-
-    </value-type>
-
-  <value-type name="QConicalGradient" polymorphic-id-expression="%1-&gt;type() == QGradient::ConicalGradient">
-    <custom-constructor>
-    return new QConicalGradient(copy-&gt;center(), copy-&gt;angle());
-    </custom-constructor>
-    <custom-destructor>
-    delete copy;
-    </custom-destructor>
-  </value-type>
-
-  <value-type name="QFontInfo"> <!-- delete-in-main-thread="yes" expense-cost="1" expense-limit="1000"> -->
-    <custom-constructor>
-    return new QFontInfo(*copy);
-    </custom-constructor>
-    <custom-destructor>
-    delete copy;
-    </custom-destructor>
-    <modify-function signature="operator=(QFontInfo)" remove="all"/>
-
-  </value-type>
-
-  <value-type name="QRadialGradient" polymorphic-id-expression="%1-&gt;type() == QGradient::RadialGradient">
-    <custom-constructor>
-    return new QRadialGradient(copy-&gt;center(), copy-&gt;radius(), copy-&gt;focalPoint());
-    </custom-constructor>
-    <custom-destructor>
-    delete copy;
-    </custom-destructor>
-  </value-type>
-
-  <value-type name="QPainterPath::Element">
-    <modify-field name="x" write="false"/>
-    <modify-field name="y" write="false"/>
-    <modify-field name="type" write="false"/>
-    <include file-name="QPainterPath" location="global"/>
-    <modify-function signature="operator QPointF()const" access="private"/>
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QPainterPath_Element___" quote-before-line="}// class"/>
-        </inject-code>
-
-    </value-type>
-
-  <value-type name="QTextEdit::ExtraSelection" delete-in-main-thread="yes">
-    <include file-name="QTextEdit" location="global"/>
-  </value-type>
-
-  <value-type name="QFont" delete-in-main-thread="yes"> <!-- <expense-cost="1" expense-limit="1000"> -->
-
-    <extra-includes>
-        <include file-name="QStringList" location="global"/>
-    </extra-includes>
-    <modify-function signature="operator=(QFont)" remove="all"/>
-  </value-type>
-
-  <value-type name="QTextTableCell" delete-in-main-thread="yes">
-    <extra-includes>
-        <include file-name="QTextCursor" location="global"/>
-    </extra-includes>
-    <modify-function signature="operator=(QTextTableCell)" remove="all"/>
-  </value-type>
-
-  <value-type name="QImage"> <!-- expense-limit="67108864" expense-cost="height()*bytesPerLine()"> -->
-    <modify-function signature="QImage(const char *, const char *)">
-        <remove/>
-    </modify-function>
-    <modify-function signature="QImage(const char **)">
-        <access modifier="private"/>
-    </modify-function>
-    <modify-function signature="QImage(const unsigned char*,int,int,int,QImage::Format)">
-        <remove/>
-    </modify-function>
-    <modify-function signature="bits()const">
-        <remove/>
-    </modify-function>
-    <modify-function signature="scanLine(int)const">
-        <remove/>
-    </modify-function>
-    <modify-function signature="QImage(const unsigned char *, int, int, QImage::Format)">
-        <remove/>
-    </modify-function>
-
-    <extra-includes>
-        <include file-name="QStringList" location="global"/>
-        <include file-name="QMatrix" location="global"/>
-    </extra-includes>
-    <modify-function signature="save(const QString &amp;, const char *, int) const">
-        <access modifier="private"/>
-        <rename to="private_save"/>
-        <modify-argument index="2">
-            <remove-default-expression/>
-        </modify-argument>
-        <modify-argument index="3">
-            <remove-default-expression/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="QImage(unsigned char*,int,int,QImage::Format)">
-        <access modifier="private"/>
-    </modify-function>
-
-    <modify-function signature="QImage(QString,const char*)">
-        <access modifier="private"/>
-        <modify-argument index="2">
-            <remove-default-expression/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="load(QString,const char*)">
-        <access modifier="private"/>
-        <modify-argument index="2">
-            <remove-default-expression/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="load(QIODevice*,const char*)">
-        <access modifier="private"/>
-    </modify-function>
-
-    <modify-function signature="loadFromData(const unsigned char*,int,const char*)">
-        <access modifier="private"/>
-        <modify-argument index="2">
-            <remove-default-expression/>
-        </modify-argument>
-        <modify-argument index="3">
-            <remove-default-expression/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="loadFromData(QByteArray,const char*)">
-        <access modifier="private"/>
-        <modify-argument index="2">
-            <remove-default-expression/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="operator=(QImage)" remove="all"/>
-
-    <modify-function signature="setText(const char*,const char*,QString)">
-        <remove/>
-    </modify-function>
-
-    <modify-function signature="text(const char*,const char*)const">
-        <remove/>
-    </modify-function>
-
-    <modify-function signature="fromData(QByteArray,const char*)">
-        <access modifier="private"/>
-        <modify-argument index="2">
-            <remove-default-expression/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="fromData(const unsigned char*,int,const char*)">
-        <remove/>
-    </modify-function>
-
-      <modify-function signature="serialNumber()const" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="textLanguages()const" remove="all"/> <!--### Obsolete in 4.3-->
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QImage___" quote-before-line="}// class"/>
-        </inject-code>
-        <inject-code>
-            <insert-template name="gui.pixmap_save">
-                <replace from="%INPUT_TYPE" to="String"/>
-                <replace from="%INPUT_NAME" to="fileName"/>
-            </insert-template>
-        </inject-code>
-
-        <modify-function signature="save(QIODevice *, const char *, int) const">
-            <access modifier="private"/>
-            <rename to="private_save"/>
-            <modify-argument index="2">
-                <remove-default-expression/>
-            </modify-argument>
-            <modify-argument index="3">
-                <remove-default-expression/>
-            </modify-argument>
-        </modify-function>
-        <inject-code>
-            <insert-template name="gui.pixmap_save">
-                <replace from="%INPUT_TYPE" to="qt.core.QIODevice"/>
-                <replace from="%INPUT_NAME" to="dev"/>
-            </insert-template>
-        </inject-code>
-
-        <template name="gui.image_load">
-        public final boolean %FUNCTION_NAME(%ARGUMENT_TYPE %ARGUMENT_NAME, String format) {
-            return %FUNCTION_NAME(%OUT_ARGUMENT_NAME, format != null ? QNativePointer.createCharPointer(format) : null);
-        }
-
-        public final boolean %FUNCTION_NAME(%ARGUMENT_TYPE %ARGUMENT_NAME) {
-            return %FUNCTION_NAME(%ARGUMENT_NAME, (String) null);
-        }
-        </template>
-<!--
-        <inject-code>
-            <insert-template name="gui.image_load">
-                <replace from="%FUNCTION_NAME" to="load"/>
-                <replace from="%ARGUMENT_TYPE" to="String"/>
-                <replace from="%ARGUMENT_NAME" to="fileName"/>
-                <replace from="%OUT_ARGUMENT_NAME" to="fileName"/>
-            </insert-template>
-        </inject-code>
-
-        <inject-code>
-            <insert-template name="gui.image_load">
-                <replace from="%FUNCTION_NAME" to="load"/>
-                <replace from="%ARGUMENT_TYPE" to="qt.core.QIODevice"/>
-                <replace from="%ARGUMENT_NAME" to="device"/>
-                <replace from="%OUT_ARGUMENT_NAME" to="device"/>
-            </insert-template>
-        </inject-code>
-
-        <inject-code>
-            <insert-template name="gui.image_load">
-                <replace from="%FUNCTION_NAME" to="loadFromData"/>
-                <replace from="%ARGUMENT_TYPE" to="byte[]"/>
-                <replace from="%ARGUMENT_NAME" to="data"/>
-                <replace from="%OUT_ARGUMENT_NAME" to="qt.internal.QtJambiInternal.byteArrayToNativePointer(data), data.length"/>
-            </insert-template>
-        </inject-code>
-
-        <inject-code>
-            <insert-template name="gui.image_load">
-                <replace from="%FUNCTION_NAME" to="loadFromData"/>
-                <replace from="%ARGUMENT_TYPE" to="qt.core.QByteArray"/>
-                <replace from="%ARGUMENT_NAME" to="data"/>
-                <replace from="%OUT_ARGUMENT_NAME" to="data"/>
-            </insert-template>
-        </inject-code>
-
-        <inject-code>
-            <insert-template name="gui.image_load">
-                <replace from="%FUNCTION_NAME" to="fromData"/>
-                <replace from="%ARGUMENT_TYPE" to="qt.core.QByteArray"/>
-                <replace from="%ARGUMENT_NAME" to="data"/>
-                <replace from="%OUT_ARGUMENT_NAME" to="data"/>
-                <replace from="boolean" to="QImage"/>
-                <replace from="final" to="static"/>
-            </insert-template>
-        </inject-code>
-		-->
-    </value-type>
-
-  <value-type name="QColormap" delete-in-main-thread="yes">
-    <modify-function signature="operator=(QColormap)" remove="all"/>
-    <extra-includes>
-        <include file-name="QColor" location="global"/>
-    </extra-includes>
-    <custom-constructor>
-    return new QColormap(*copy);
-    </custom-constructor>
-    <custom-destructor>
-    delete copy;
-    </custom-destructor>
-  </value-type>
-
-  <value-type name="QCursor" delete-in-main-thread="yes">
-     <extra-includes>
-        <include file-name="QPixmap" location="global"/>
-    </extra-includes>
-    <modify-function signature="operator=(QCursor)" remove="all"/>
-<!--  
-        <template name="gui.cursor_bitmap_getter">
-            <insert-template name="gui.getter_returning_nativepointer">
-                <replace from="%RETURN_TYPE" to="QBitmap"/>
-            </insert-template>
-        </template>
-
-        <modify-function signature="bitmap()const">
-            <access modifier="private"/>
-            <rename to="bitmap_private"/>
-        </modify-function>
-        <inject-code>
-            <insert-template name="gui.cursor_bitmap_getter">
-                <replace from="%FUNCTION_NAME" to="bitmap"/>
-            </insert-template>
-        </inject-code>
-
-        <modify-function signature="mask()const">
-            <access modifier="private"/>
-            <rename to="mask_private"/>
-        </modify-function>
-        <inject-code>
-            <insert-template name="gui.cursor_bitmap_getter">
-                <replace from="%FUNCTION_NAME" to="mask"/>
-            </insert-template>
-        </inject-code>
-		-->
-    </value-type>
-
-  <value-type name="QFontDatabase" delete-in-main-thread="yes">
-      <extra-includes>
-        <include file-name="QStringList" location="global"/>
-    </extra-includes>
-  </value-type>
-
-  <value-type name="QPen">
-      <extra-includes>
-        <include file-name="QBrush" location="global"/>
-    </extra-includes>
-
-    <modify-function signature="operator=(QPen)" remove="all"/>
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QPen___" quote-before-line="}// class"/>
-        </inject-code>
-    </value-type>
-
-  <value-type name="QBrush">
-    <modify-function signature="QBrush(Qt::GlobalColor, Qt::BrushStyle)" remove="all"/>
-    <modify-function signature="operator=(const QBrush &amp;)" remove="all"/>
-	<!-- restore later - abstract class not handled-->
-	<modify-function signature="gradient() const" remove="all"/>
-    
-	<extra-includes>
-        <include file-name="QPixmap" location="global"/>
-    </extra-includes>
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QBrush___" quote-before-line="}// class"/>
-        </inject-code>
-
-
-        <modify-function signature="gradient()const">
-            <!-- Use custom constructors already defined for gradient -->
-            <modify-argument index="0">
-                <replace-type modified-type="qt.gui.QGradient"/>
-                <conversion-rule class="native">
-                    jobject %out = qtjambi_from_object(__jni_env, %in, "QGradient", "com/trolltech/qt/gui/", "Lcom_trolltech_qt_gui_QGradient_2", true);
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>
-    </value-type>
-
-  <value-type name="QColor">
-    <modify-function signature="QColor(QColor::Spec)" remove="all"/>
-    <modify-function signature="operator=(QColor)" remove="all"/>
-    <modify-function signature="operator=(Qt::GlobalColor)" remove="all"/>
-
-    <modify-function signature="QColor(const char*)">
-        <remove/>
-    </modify-function>
-
-    <modify-function signature="getCmyk(int*,int*,int*,int*,int*)">
-        <remove/>
-    </modify-function>
-
-    <modify-function signature="getCmykF(double*,double*,double*,double*,double*)">
-        <remove/>
-    </modify-function>
-
-    <modify-function signature="getHsv(int*,int*,int*,int*)const">
-        <remove/>
-    </modify-function>
-
-    <modify-function signature="getHsvF(double*,double*,double*,double*)const">
-        <remove/>
-    </modify-function>
-
-    <modify-function signature="getRgb(int*,int*,int*,int*)const">
-        <remove/>
-    </modify-function>
-
-    <modify-function signature="getRgbF(double*,double*,double*,double*)const">
-        <remove/>
-    </modify-function>
-
-      <modify-function signature="dark(int)const" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="light(int)const" remove="all"/> <!--### Obsolete in 4.3-->
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QColor___" quote-before-line="}// class"/>
-        </inject-code>
-    </value-type>
-
-  <value-type name="QFontMetricsF" delete-in-main-thread="yes"> <!-- expense-cost="1" expense-limit="1000"> -->
-<!--    <custom-constructor>
-        return new QFontMetricsF(*copy);
-    </custom-constructor>
-    <custom-destructor>
-        delete copy;
-    </custom-destructor>
-    -->
-    <modify-function signature="operator!=(const QFontMetricsF &amp;)">
-        <remove/>
-    </modify-function>
-    <modify-function signature="operator==(const QFontMetricsF &amp;)">
-        <remove/>
-    </modify-function>
-
-    <modify-function signature="boundingRect(QRectF,int,QString,int,int*)const">
-        <access modifier="private"/>
-        <modify-argument index="4">
-            <remove-default-expression/>
-        </modify-argument>
-        <modify-argument index="5">
-            <remove-default-expression/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="operator=(QFontMetrics)" remove="all"/>
-    <modify-function signature="operator=(QFontMetricsF)" remove="all"/>
-
-    <modify-function signature="size(int,QString,int,int*)const">
-        <access modifier="private"/>
-        <modify-argument index="3">
-            <remove-default-expression/>
-        </modify-argument>
-        <modify-argument index="4">
-            <remove-default-expression/>
-        </modify-argument>
-    </modify-function>
-   
-        <template name="gui.fontmetricsf_boundingrect">
-            <insert-template name="gui.fontmetrics_tabarray_function">
-                <replace from="%RETURN_TYPE" to="qt.core.QRectF"/>
-                <replace from="%FUNCTION_NAME" to="boundingRect"/>
-                <replace from="%RECT_ARGUMENTS" to="%RECT_ARGUMENTS, "/>
-                <replace from="%RECT_CALL_ARGUMENTS" to="%RECT_CALL_ARGUMENTS, "/>
-            </insert-template>
-        </template>
-
-        <inject-code>
-            <insert-template name="gui.fontmetricsf_boundingrect">
-                <replace from="%RECT_ARGUMENTS" to="qt.core.QRectF rect"/>
-                <replace from="%RECT_CALL_ARGUMENTS" to="rect"/>
-            </insert-template>
-        </inject-code>
-
-        <inject-code>
-            <insert-template name="gui.fontmetrics_tabarray_function">
-                <replace from="%RETURN_TYPE" to="qt.core.QSizeF"/>
-                <replace from="%FUNCTION_NAME" to="size"/>
-                <replace from="%RECT_ARGUMENTS" to=""/>
-                <replace from="%RECT_CALL_ARGUMENTS" to=""/>
-            </insert-template>
-        </inject-code>
-    </value-type>
-   <value-type name="QTextOption::Tab"/>
-
-  <value-type name="QFontMetrics" delete-in-main-thread="yes"> <!-- <expense-cost="1" expense-limit="1000">
-    <custom-constructor>
-        return new QFontMetrics(*copy);
-    </custom-constructor>
-    <custom-destructor>
-        delete copy;
-    </custom-destructor>-->
-    <modify-function signature="operator!=(const QFontMetrics &amp;)">
-        <remove/>
-    </modify-function>
-    <modify-function signature="operator==(const QFontMetrics &amp;)">
-        <remove/>
-    </modify-function>
-
-    <modify-function signature="boundingRect(int,int,int,int,int,QString,int,int*)const">
-        <access modifier="private"/>
-        <modify-argument index="7">
-            <remove-default-expression/>
-        </modify-argument>
-        <modify-argument index="8">
-            <remove-default-expression/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="boundingRect(QRect,int,QString,int,int*)const">
-        <access modifier="private"/>
-        <modify-argument index="4">
-            <remove-default-expression/>
-        </modify-argument>
-        <modify-argument index="5">
-            <remove-default-expression/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="operator=(QFontMetrics)" remove="all"/>
-
-    <modify-function signature="size(int,QString,int,int*)const">
-        <access modifier="private"/>
-        <modify-argument index="3">
-            <remove-default-expression/>
-        </modify-argument>
-        <modify-argument index="4">
-            <remove-default-expression/>
-        </modify-argument>
-    </modify-function>
-
- <!-- 
-        <template name="gui.fontmetrics_tabarray_function">
-        public final %RETURN_TYPE %FUNCTION_NAME(%RECT_ARGUMENTSint flags, String text, int tabStops, int tabArray[]) {
-            QNativePointer np = tabArray == null ? null : new QNativePointer(QNativePointer.Type.Int, tabArray.length + 1);
-            if (np != null) {
-                for (int i=0; i&lt;tabArray.length; ++i) np.setIntAt(i, tabArray[i]);
-                np.setIntAt(tabArray.length, 0);
-            }
-            return %FUNCTION_NAME(%RECT_CALL_ARGUMENTSflags, text, tabStops, np);
-        }
-
-        public final %RETURN_TYPE %FUNCTION_NAME(%RECT_ARGUMENTSint flags, String text, int tabStops) {
-            return %FUNCTION_NAME(%RECT_CALL_ARGUMENTSflags, text, tabStops, (int []) null);
-        }
-
-        public final %RETURN_TYPE %FUNCTION_NAME(%RECT_ARGUMENTSint flags, String text) {
-            return %FUNCTION_NAME(%RECT_CALL_ARGUMENTSflags, text, 0);
-        }
-        </template>
-
-        <template name="gui.fontmetrics_boundingrect">
-            <insert-template name="gui.fontmetrics_tabarray_function">
-                <replace from="%RETURN_TYPE" to="qt.core.QRect"/>
-                <replace from="%FUNCTION_NAME" to="boundingRect"/>
-                <replace from="%RECT_ARGUMENTS" to="%RECT_ARGUMENTS, "/>
-                <replace from="%RECT_CALL_ARGUMENTS" to="%RECT_CALL_ARGUMENTS, "/>
-            </insert-template>
-        </template>
-
-        <inject-code>
-            <insert-template name="gui.fontmetrics_boundingrect">
-                <replace from="%RECT_ARGUMENTS" to="int x, int y, int width, int height"/>
-                <replace from="%RECT_CALL_ARGUMENTS" to="x, y, width, height"/>
-            </insert-template>
-        </inject-code>
-
-        <inject-code>
-            <insert-template name="gui.fontmetrics_boundingrect">
-                <replace from="%RECT_ARGUMENTS" to="qt.core.QRect rect"/>
-                <replace from="%RECT_CALL_ARGUMENTS" to="rect"/>
-            </insert-template>
-        </inject-code>
-
-        <inject-code>
-            <insert-template name="gui.fontmetrics_tabarray_function">
-                <replace from="%RETURN_TYPE" to="qt.core.QSize"/>
-                <replace from="%FUNCTION_NAME" to="size"/>
-                <replace from="%RECT_ARGUMENTS" to=""/>
-                <replace from="%RECT_CALL_ARGUMENTS" to=""/>
-            </insert-template>
-        </inject-code>-->
-    </value-type>
-
-  <value-type name="QGradient" force-abstract="yes" polymorphic-base="yes" polymorphic-id-expression="%1-&gt;type() == QGradient::NoGradient">
-    <custom-constructor>
-    Q_UNUSED(copy)
-    qWarning("Copying empty QGradient object");
-    return new QGradient();
-    </custom-constructor>
-    <custom-destructor>
-    delete copy;
-    </custom-destructor>
-    <modify-function signature="operator==(const QGradient &amp;)">
-        <remove/>
-    </modify-function>
-  </value-type>
-
-  <value-type name="QLinearGradient" polymorphic-id-expression="%1-&gt;type() == QGradient::LinearGradient">
-    <custom-constructor>
-    QLinearGradient *lg = new QLinearGradient(copy-&gt;start(), copy-&gt;finalStop());
-    lg-&gt;setSpread(copy-&gt;spread());
-    lg-&gt;setStops(copy-&gt;stops());
-    return (void *) lg;
-    </custom-constructor>
-    <custom-destructor>
-    delete copy;
-    </custom-destructor>
-  </value-type>
-
-  <value-type name="QPrinterInfo">
-    <modify-function signature="operator=(const QPrinterInfo &amp;)" remove="all"/>
-  </value-type>
-
-  <interface-type name="QLayoutItem">
-    <modify-field name="align">
-      <rename to="align_"/>
-    </modify-field>
-  </interface-type>
-  <interface-type name="QPaintDevice">
-	
-	<modify-function signature="paintEngine () const">
-		<store-result/>
-	</modify-function>
-	
-  </interface-type>
-  
-  <interface-type name="QGraphicsItem" delete-in-main-thread="yes">
-	<modify-function signature="setExtension(QGraphicsItem::Extension,QVariant)" remove="all"/>
-	<modify-function signature="supportsExtension(QGraphicsItem::Extension)const" remove="all"/>
-	
-    <modify-function signature="matrix()const" remove="all"/>
-    <modify-function signature="resetMatrix()" remove="all"/>
-    <modify-function signature="sceneMatrix()const" remove="all"/>
-    <modify-function signature="setMatrix(QMatrix, bool)" remove="all"/>
-
-    <modify-function signature="children()const" remove="all"/>
-  <!--
-    <modify-function signature="setMatrix(QMatrix, bool)" remove="all"/>
-
-    <modify-function signature="paint(QPainter*,const QStyleOptionGraphicsItem*,QWidget*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="collidesWithItem(const QGraphicsItem*,Qt::ItemSelectionMode)const">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-
-    <modify-function signature="contextMenuEvent(QGraphicsSceneContextMenuEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="dragEnterEvent(QGraphicsSceneDragDropEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="dragLeaveEvent(QGraphicsSceneDragDropEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="dragMoveEvent(QGraphicsSceneDragDropEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="dropEvent(QGraphicsSceneDragDropEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="focusInEvent(QFocusEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="focusOutEvent(QFocusEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="hoverEnterEvent(QGraphicsSceneHoverEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="hoverLeaveEvent(QGraphicsSceneHoverEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="hoverMoveEvent(QGraphicsSceneHoverEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="inputMethodEvent(QInputMethodEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="isObscuredBy(const QGraphicsItem*)const">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="keyPressEvent(QKeyEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="keyReleaseEvent(QKeyEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="mouseDoubleClickEvent(QGraphicsSceneMouseEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="mouseMoveEvent(QGraphicsSceneMouseEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="mousePressEvent(QGraphicsSceneMouseEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="mouseReleaseEvent(QGraphicsSceneMouseEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="sceneEvent(QEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="sceneEventFilter(QGraphicsItem*,QEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-        <modify-argument index="2" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="wheelEvent(QGraphicsSceneWheelEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-
-    <modify-function signature="children()const" remove="all"/>
-    <modify-function signature="installSceneEventFilter(QGraphicsItem *)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="removeSceneEventFilter(QGraphicsItem *)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-  
-
-        <modify-function signature="QGraphicsItem(QGraphicsItem*,QGraphicsScene*)">
-            <inject-code position="end">
-                <argument-map index="1" meta-name="%1"/>
-            if (%1 != null)
-                disableGarbageCollection();
-            </inject-code>
-        </modify-function>
-
-        <modify-function signature="paint(QPainter *, const QStyleOptionGraphicsItem *, QWidget *)">
-            <modify-argument index="2">
-                <conversion-rule class="shell">
-                    jobject %out = qtjambi_from_object(__jni_env, %in, "QStyleOptionGraphicsItem", "com/trolltech/qt/gui/", "Lcom_trolltech_qt_gui_QStyleOption_2", true);
-                </conversion-rule>
-                <conversion-rule class="native">
-                    const QStyleOptionGraphicsItem *%out = (QStyleOptionGraphicsItem *) qtjambi_to_object(__jni_env, %in);
-                </conversion-rule>
-                <replace-type modified-type="qt.gui.QStyleOptionGraphicsItem"/>
-            </modify-argument>
-        </modify-function>
-
-        <modify-function signature="setGroup(QGraphicsItemGroup*)">
-            <modify-argument index="1">
-                <reference-count action="ignore"/>
-            </modify-argument>
-            <inject-code position="beginning">
-                qt.gui.QGraphicsItemGroup oldGroup = group();
-            </inject-code>
-            <inject-code position="end">
-                <argument-map index="1" meta-name="%1"/>
-            if (%1 == null &amp;&amp; oldGroup != null &amp;&amp; oldGroup.parentItem() == null)
-                reenableGarbageCollection();
-            else
-                disableGarbageCollection();
-            </inject-code>
-        </modify-function>
-
-        <modify-function signature="setParentItem(QGraphicsItem*)">
-            <modify-argument index="1">
-                <reference-count action="ignore"/>
-            </modify-argument>
-            <inject-code position="end">
-                <argument-map index="1" meta-name="%1"/>
-            if (%1 == null)
-                reenableGarbageCollection();
-            else
-                disableGarbageCollection();
-            </inject-code>
-        </modify-function> -->
-    </interface-type>
-
-  <object-type name="QAbstractGraphicsShapeItem" delete-in-main-thread="yes">
-  	<modify-function signature="setExtension(QGraphicsItem::Extension,QVariant)" remove="all"/>
-	<modify-function signature="supportsExtension(QGraphicsItem::Extension)const" remove="all"/>
-  <!--
-    <modify-function signature="QAbstractGraphicsShapeItem(QGraphicsItem*,QGraphicsScene*)">
-        <inject-code position="end">
-            <argument-map index="1" meta-name="%1"/>
-            if (%1 != null) disableGarbageCollection();
-        </inject-code>
-    </modify-function>
-   -->
-    <modify-function signature="matrix()const" remove="all"/>
-    <modify-function signature="resetMatrix()" remove="all"/>
-    <modify-function signature="sceneMatrix()const" remove="all"/>
-    <modify-function signature="setMatrix(QMatrix, bool)" remove="all"/>
-    <!--
-        <modify-function signature="QAbstractGraphicsShapeItem(QGraphicsItem*,QGraphicsScene*)">
-            <inject-code position="end">
-                <argument-map index="1" meta-name="%1"/>
-            if (%1 != null) disableGarbageCollection();
-            </inject-code>
-        </modify-function>
-    -->
-    </object-type>
-
-  <object-type name="QAbstractItemView">
-<!--     <extra-includes>
-        <include file-name="tango.util.container.HashMap" location="java"/>
-    </extra-includes>-->
-      <modify-function signature="update()" remove="all"/>
-      <modify-function signature="horizontalStepsPerItem()const" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="setHorizontalStepsPerItem(int)" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="setVerticalStepsPerItem(int)" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="verticalStepsPerItem()const" remove="all"/> <!--### Obsolete in 4.3-->
-
-      <modify-function signature="edit(QModelIndex,QAbstractItemView::EditTrigger,QEvent*)">
-        <modify-argument index="3" invalidate-after-use="yes"/>
-      </modify-function>
-      <modify-function signature="selectionCommand(QModelIndex,const QEvent*)const">
-        <modify-argument index="2" invalidate-after-use="yes"/>
-      </modify-function>
-
-<!--      <modify-function signature="QAbstractItemView(QWidget*)">
-        <inject-code class="java" position="end">
-    __rcDelegatesForColumns = new HashMap!(int, QAbstractItemDelegate);
-    __rcDelegatesForRows = new HashMap!(int, QAbstractItemDelegate);
-        </inject-code>
-      </modify-function>
- --> 
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QAbstractItemView___" quote-before-line="}// class"/>
-        </inject-code>
-
-
-        <modify-function signature="setIndexWidget(const QModelIndex &amp;,QWidget *)">
-            <modify-argument index="2">
-                <!-- Safe to ignore because view reparents widget -->
-                <reference-count action="ignore"/>
-            </modify-argument>
-        </modify-function>
-        <modify-function signature="setItemDelegate(QAbstractItemDelegate *)">
-            <modify-argument index="1">
-                <reference-count action="set" variable-name="__rcItemDelegate"/>
-            </modify-argument>
-        </modify-function>
-        <modify-function signature="setModel(QAbstractItemModel *)">
-            <modify-argument index="1">
-                <reference-count action="set" variable-name="__rcItemModel"/>
-            </modify-argument>
-            <inject-code class="java" position="end">
-                // setModel() creates a new selection model for the object
-                __rcItemSelectionModel = null;
-            </inject-code>
-        </modify-function>
-        <modify-function signature="setSelectionModel(QItemSelectionModel *)">
-            <modify-argument index="1">
-                <no-null-pointer/>
-                <reference-count action="set" variable-name="__rcItemSelectionModel"/>
-            </modify-argument>
-        </modify-function>
-        <modify-function signature="setItemDelegateForColumn(int,QAbstractItemDelegate*)">
-            <modify-argument index="2">
-                <reference-count action="ignore"/>
-            </modify-argument>
-            <inject-code position="end">
-                <argument-map index="1" meta-name="%1"/>
-                <argument-map index="2" meta-name="%2"/>
-                if (%2 is null)
-                    __rcDelegatesForColumns.remove(%1);
-                else
-                    __rcDelegatesForColumns[%1] = %2;
-            </inject-code>
-        </modify-function>
-        <modify-function signature="setItemDelegateForRow(int,QAbstractItemDelegate*)">
-            <modify-argument index="2">
-                <reference-count action="ignore"/>
-            </modify-argument>
-            <inject-code position="end">
-                <argument-map index="1" meta-name="%1"/>
-                <argument-map index="2" meta-name="%2"/>
-                if (%2 is null)
-                    __rcDelegatesForRows.remove(%1);
-                else
-                    __rcDelegatesForRows[%1] = %2;
-            </inject-code>
-        </modify-function>
-    </object-type>
-
-  <object-type name="QAbstractPageSetupDialog"/>
-  <object-type name="QAbstractPrintDialog"/>
-  <object-type name="QAbstractSlider"/>
-  <object-type name="QAbstractTextDocumentLayout">
-    <modify-function signature="setPaintDevice(QPaintDevice*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcPaintDevice"/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="draw(QPainter*,QAbstractTextDocumentLayout::PaintContext)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="drawInlineObject(QPainter*,QRectF,QTextInlineObject,int,QTextFormat)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-
-  </object-type>
-  <object-type name="QAccessible">
-    <modify-function signature="initialize()" remove="all"/>
-    <modify-function signature="cleanup()" remove="all"/>
-    <modify-function signature="setRootObject(QObject *)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="queryAccessibleInterface(QObject *)">
-        <modify-argument index="return">
-            <define-ownership class="java" owner="java"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-  <object-type name="QAccessibleBridge">
-    <modify-function signature="setRootObject(QAccessibleInterface *)">
-        <modify-argument index="1">
-            <define-ownership class="shell" owner="java"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="notifyAccessibilityUpdate(int,QAccessibleInterface*,int)">
-        <modify-argument invalidate-after-use="yes" index="2"/>
-    </modify-function>
-  </object-type>
-  <object-type name="QAccessible2Interface"/>
-<!--  <object-type name="QAccessibleTableInterface">
-    <modify-function signature="qAccessibleTableCastHelper()" remove="all"/>
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QAccessibleTableInterface___" quote-before-line="}// class"/>
-        </inject-code>
-
-
-        <modify-function signature="cellAtIndex(int,int*,int*,int*,int*,bool*)">
-        <modify-argument index="2">
-            <remove-argument/>
-            <conversion-rule class="native">
-                int rowHolder;
-                int *%out = &amp;rowHolder;
-            </conversion-rule>
-            <conversion-rule class="shell">
-                // nothing
-            </conversion-rule>
-        </modify-argument>
-        <modify-argument index="3">
-            <remove-argument/>
-            <conversion-rule class="native">
-                int columnHolder;
-                int *%out = &amp;columnHolder;
-            </conversion-rule>
-            <conversion-rule class="shell">
-                // nothing
-            </conversion-rule>
-        </modify-argument>
-        <modify-argument index="4">
-            <remove-argument/>
-            <conversion-rule class="native">
-                int rowSpanHolder;
-                int *%out = &amp;rowSpanHolder;
-            </conversion-rule>
-            <conversion-rule class="shell">
-                // nothing
-            </conversion-rule>
-        </modify-argument>
-        <modify-argument index="5">
-            <remove-argument/>
-            <conversion-rule class="native">
-                int columnSpanHolder;
-                int *%out = &amp;columnSpanHolder;
-            </conversion-rule>
-            <conversion-rule class="shell">
-                // nothing
-            </conversion-rule>
-        </modify-argument>
-        <modify-argument index="6">
-            <remove-argument/>
-            <conversion-rule class="native">
-                bool isSelectedHolder = false;
-                bool *%out = &amp;isSelectedHolder;
-            </conversion-rule>
-            <conversion-rule class="shell">
-                // no conversion
-            </conversion-rule>
-        </modify-argument>
-        <modify-argument index="return">
-            <replace-type modified-type="qt.gui.QAccessibleTableInterface$CellAtIndex"/>
-            <conversion-rule class="native">
-                jobject %out = qtjambi_to_cellatindex(__jni_env, rowHolder, columnHolder, rowSpanHolder, columnSpanHolder, isSelectedHolder);
-            </conversion-rule>
-            <conversion-rule class="shell">
-                qtjambi_from_cellatindex(__jni_env, %in, %2, %3, %4, %5, %6);
-            </conversion-rule>
-        </modify-argument>
-        </modify-function>
-
-        <modify-function signature="selectedColumns(int,QList&lt;int&gt;*)">
-        <modify-argument index="2">
-            <replace-type modified-type="java.util.List&lt;Integer&gt;"/>
-            <conversion-rule class="shell">
-                StaticCache *sc = StaticCache::instance();
-                sc-&gt;resolveArrayList();
-                sc-&gt;resolveCollection();
-                sc-&gt;resolveInteger();
-
-                jobject columnsHolder = 0;
-                if (%in != 0) {
-                    columnsHolder = __jni_env-&gt;NewObject(sc-&gt;ArrayList.class_ref, sc-&gt;ArrayList.constructor, %in-&gt;size());
-                    qtjambi_exception_check(__jni_env);
-                    if (columnsHolder != 0) for (int i=0; i&lt;%in-&gt;size(); i++) {
-                        __jni_env-&gt;CallVoidMethod(columnsHolder, sc-&gt;Collection.add, qtjambi_from_int(__jni_env, %in-&gt;at(i)));
-                    }
-                    qtjambi_exception_check(__jni_env);
-                }
-                jobject %out = columnsHolder;
-            </conversion-rule>
-            <conversion-rule class="native">
-                StaticCache *sc = StaticCache::instance();
-                sc-&gt;resolveCollection();
-
-                QList&lt;int&gt; columnHolder;
-                if (%in != 0) {
-                    jobjectArray columnsAsArray = (jobjectArray) __jni_env-&gt;CallObjectMethod(%in, sc-&gt;Collection.toArray);
-                    if (columnsAsArray != 0) {
-                        int len = __jni_env-&gt;GetArrayLength(columnsAsArray);
-                        for (int i=0; i&lt;len; ++i) {
-                            columnHolder.append(qtjambi_to_int(__jni_env, __jni_env-&gt;GetObjectArrayElement(columnsAsArray, i)));
-                        }
-                    }
-                    qtjambi_exception_check(__jni_env);
-                }
-                QList&lt;int&gt; *%out = &amp;columnHolder;
-            </conversion-rule>
-        </modify-argument>
-        <modify-argument index="return">
-            <conversion-rule class="shell">
-                // Copy back
-                if (columnsHolder != 0) {
-                    jobjectArray columnsAsArray = (jobjectArray) __jni_env-&gt;CallObjectMethod(columnsHolder, sc-&gt;Collection.toArray);
-                    if (columnsAsArray != 0) {
-                        int len = __jni_env-&gt;GetArrayLength(columnsAsArray);
-                        %2-&gt;clear();
-                        for (int i=0; i&lt;len; ++i) {
-                            %2-&gt;append(qtjambi_to_int(__jni_env, __jni_env-&gt;GetObjectArrayElement(columnsAsArray, i)));
-                        }
-                    }
-                }
-
-                int %out = %in;
-            </conversion-rule>
-            <conversion-rule class="native">
-                // Copy back
-                if (%2 != 0) {
-                    __jni_env-&gt;CallVoidMethod(%2, sc-&gt;Collection.clear);
-                    for (int i=0; i&lt;columnHolder.size(); ++i) {
-                        __jni_env-&gt;CallVoidMethod(%2, sc-&gt;Collection.add, qtjambi_from_int(__jni_env, columnHolder.at(i)));
-                    }
-                    qtjambi_exception_check(__jni_env);
-                }
-
-                jint %out = %in;
-            </conversion-rule>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="selectedRows(int,QList&lt;int&gt;*)">
-        <modify-argument index="2">
-            <replace-type modified-type="java.util.List&lt;Integer&gt;"/>
-            <conversion-rule class="shell">
-                StaticCache *sc = StaticCache::instance();
-                sc-&gt;resolveArrayList();
-                sc-&gt;resolveCollection();
-                sc-&gt;resolveInteger();
-
-                jobject rowsHolder = 0;
-                if (%in != 0) {
-                    rowsHolder = __jni_env-&gt;NewObject(sc-&gt;ArrayList.class_ref, sc-&gt;ArrayList.constructor, %in-&gt;size());
-                    qtjambi_exception_check(__jni_env);
-                    if (rowsHolder != 0) for (int i=0; i&lt;%in-&gt;size(); i++) {
-                        __jni_env-&gt;CallVoidMethod(rowsHolder, sc-&gt;Collection.add, qtjambi_from_int(__jni_env, %in-&gt;at(i)));
-                    }
-                    qtjambi_exception_check(__jni_env);
-                }
-                jobject %out = rowsHolder;
-            </conversion-rule>
-            <conversion-rule class="native">
-                StaticCache *sc = StaticCache::instance();
-                sc-&gt;resolveCollection();
-
-                QList&lt;int&gt; rowsHolder;
-                if (%in != 0) {
-                    jobjectArray rowsAsArray = (jobjectArray) __jni_env-&gt;CallObjectMethod(%in, sc-&gt;Collection.toArray);
-                    if (rowsAsArray != 0) {
-                        int len = __jni_env-&gt;GetArrayLength(rowsAsArray);
-                        for (int i=0; i&lt;len; ++i) {
-                            rowsHolder.append(qtjambi_to_int(__jni_env, __jni_env-&gt;GetObjectArrayElement(rowsAsArray, i)));
-                        }
-                    }
-                    qtjambi_exception_check(__jni_env);
-                }
-                QList&lt;int&gt; *%out = &amp;rowsHolder;
-            </conversion-rule>
-        </modify-argument>
-        <modify-argument index="return">
-            <conversion-rule class="shell">
-                // Copy back
-                if (rowsHolder != 0) {
-                    jobjectArray rowsAsArray = (jobjectArray) __jni_env-&gt;CallObjectMethod(rowsHolder, sc-&gt;Collection.toArray);
-                    if (rowsAsArray != 0) {
-                        int len = __jni_env-&gt;GetArrayLength(rowsAsArray);
-                        %2-&gt;clear();
-                        for (int i=0; i&lt;len; ++i) {
-                            %2-&gt;append(qtjambi_to_int(__jni_env, __jni_env-&gt;GetObjectArrayElement(rowsAsArray, i)));
-                        }
-                    }
-                }
-
-                int %out = %in;
-            </conversion-rule>
-            <conversion-rule class="native">
-                // Copy back
-                if (%2 != 0) {
-                    __jni_env-&gt;CallVoidMethod(%2, sc-&gt;Collection.clear);
-                    for (int i=0; i&lt;rowsHolder.size(); ++i) {
-                        __jni_env-&gt;CallVoidMethod(%2, sc-&gt;Collection.add, qtjambi_from_int(__jni_env, rowsHolder.at(i)));
-                    }
-                    qtjambi_exception_check(__jni_env);
-                }
-
-                jint %out = %in;
-            </conversion-rule>
-        </modify-argument>
-        </modify-function>
-
-    </object-type>         -->
-
-  <object-type name="QAccessibleInterface">
-    <modify-function signature="indexOfChild(const QAccessibleInterface*)const">
-        <modify-argument invalidate-after-use="yes" index="1"/>
-    </modify-function>
-    <modify-function signature="relationTo(int,const QAccessibleInterface*,int)const">
-        <modify-argument invalidate-after-use="yes" index="2"/>
-    </modify-function>
-    
-<!--    <modify-function signature="navigate(QAccessible::RelationFlag,int,QAccessibleInterface**)const" remove="all"/> --><!-- TODO -->
-
-<!--  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QAccessibleInterface___" quote-before-line="}// class"/>
-        </inject-code>
-
-
-        <template name="gui.accessible_interface_to_target">
-        jclass __target_class = resolveClass(__jni_env, "QAccessibleInterface$Target", "com/trolltech/qt/gui/");
-        QTJAMBI_EXCEPTION_CHECK(__jni_env);
-        Q_ASSERT(__target_class);
-
-        jmethodID __target_constructor = resolveMethod(__jni_env, "&lt;init&gt;", "(ILcom/trolltech/qt/gui/QAccessibleInterface;)V", "QAccessibleInterface$Target", "com/trolltech/qt/gui/");
-        QTJAMBI_EXCEPTION_CHECK(__jni_env);
-        Q_ASSERT(__target_constructor);
-
-        jobject __java_interface = %TARGET != 0 ? qtjambi_from_object(__jni_env, %TARGET, "QAccessibleInterface$ConcreteWrapper", "com/trolltech/qt/gui/", true) : 0;
-
-        jobject %OUTPUT = __jni_env-&gt;NewObject(__target_class, __target_constructor, %CHILD_INDEX, __java_interface);
-        </template>
-
-        <modify-function signature="navigate(QAccessible::RelationFlag,int,QAccessibleInterface**)const">
-            <modify-argument index="3">
-                <remove-argument/>
-                <conversion-rule class="shell">
-                    // nothing
-                </conversion-rule>
-                <conversion-rule class="native">
-                    QAccessibleInterface *__qt_interface = 0;
-                    QAccessibleInterface **%out = &amp;__qt_interface;
-                </conversion-rule>
-            </modify-argument>
-
-            <modify-argument index="0">
-                <replace-type modified-type="qt.gui.QAccessibleInterface$Target"/>
-                <conversion-rule class="native">
-                    <insert-template name="gui.accessible_interface_to_target">
-                        <replace from="%TARGET" to="__qt_interface"/>
-                        <replace from="%CHILD_INDEX" to="%in"/>
-                        <replace from="%OUTPUT" to="%out"/>
-                    </insert-template>
-                </conversion-rule>
-                <conversion-rule class="shell">
-                    jfieldID __childIndex_id = resolveField(__jni_env, "childIndex", "I", "QAccessibleInterface$Target", "com/trolltech/qt/gui/");
-                    Q_ASSERT(__childIndex_id);
-
-                    jfieldID __target_id = resolveField(__jni_env, "target", "Lcom/trolltech/qt/gui/QAccessibleInterface;", "QAccessibleInterface$Target", "com/trolltech/qt/gui/");
-                    Q_ASSERT(__target_id);
-
-                    jint %out = __jni_env-&gt;GetIntField(%in, __childIndex_id);
-
-                    jobject __java_interface = __jni_env-&gt;GetObjectField(%in, __target_id);
-                    QtJambiLink *__qt_link = __java_interface != 0 ? QtJambiLink::findLink(__jni_env, __java_interface) : 0;
-                    if (__qt_link != 0) __qt_link-&gt;disableGarbageCollection(__jni_env, __java_interface);
-                    QAccessibleInterface *__qt_interface = __qt_link != 0 ? (QAccessibleInterface *) __qt_link-&gt;pointer() : 0;
-
-                    if (%3 != 0) *%3 = __qt_interface;
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>
-        -->
-    </object-type>
-  <object-type name="QAccessibleInterfaceEx"/>
-  <object-type name="QAccessibleObject"/>
-  <object-type name="QAccessibleObjectEx"/>
-  <object-type name="QAccessibleWidget"/>
-  <object-type name="QAccessibleWidgetEx"/>
-  <object-type name="QActionGroup">
-        <modify-function signature="addAction(QAction*)">
-            <modify-argument index="1">
-                <reference-count action="add" variable-name="__rcActions"/>
-            </modify-argument>
-<!--            <inject-code position="end">
-                <argument-map index="1" meta-name="%1"/>
-                qt.GeneratorUtilities.setField(%1, QAction.class, "__rcActionGroup", this);
-            </inject-code> -->
-        </modify-function>
-        <modify-function signature="removeAction(QAction*)">
-            <modify-argument index="1">
-                <reference-count action="remove" variable-name="__rcActions"/>
-            </modify-argument>
-<!--            <inject-code position="end">
-                <argument-map index="1" meta-name="%1"/>
-                qt.GeneratorUtilities.setField(%1, QAction.class, "__rcActionGroup", null);
-            </inject-code> -->
-        </modify-function>
-    </object-type>
-  <object-type name="QCDEStyle">
-      <modify-function signature="standardIconImplementation(QStyle::StandardPixmap, const QStyleOption *, const QWidget *)const" virtual-slot="yes"/>
-  </object-type>
-  <object-type name="QCheckBox">
-<!--    <modify-function signature="initStyleOption(QStyleOptionButton*)const">
-        <access modifier="private"/>
-    </modify-function>
-  
-        <inject-code>
-            <insert-template name="gui.init_style_option">
-                <replace from="%TYPE" to="QStyleOptionButton"/>
-            </insert-template>
-        </inject-code> -->
-    </object-type>
-  <object-type name="QCleanlooksStyle">
-    <modify-function signature="standardPixmap(QStyle::StandardPixmap,const QStyleOption*,const QWidget*)const" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="standardIconImplementation(QStyle::StandardPixmap, const QStyleOption *, const QWidget *)const" virtual-slot="yes"/>
-  </object-type>
-  <object-type name="QCommonStyle">
-      <modify-function signature="standardPixmap(QStyle::StandardPixmap, const QStyleOption*,const QWidget*)const" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="standardIconImplementation(QStyle::StandardPixmap, const QStyleOption *, const QWidget *)const" virtual-slot="yes"/>
-  </object-type>
-  <object-type name="QDataWidgetMapper">
-    <modify-function signature="addMapping(QWidget*,int)">
-        <modify-argument index="1">
-            <reference-count action="add" variable-name="__rcMappings"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="addMapping(QWidget*,int,QByteArray)">
-        <modify-argument index="1">
-            <reference-count action="add" variable-name="__rcMappings"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="removeMapping(QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="remove" variable-name="__rcMappings"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setItemDelegate(QAbstractItemDelegate*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcItemDelegate"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setModel(QAbstractItemModel*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcModel"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-  <object-type name="QDateEdit"/>
-  <object-type name="QDesktopServices">
-    <modify-function signature="setUrlHandler(const QString &amp;, QObject *, const char *)" access="private">
-        <modify-argument index="2">
-            <reference-count action="ignore"/> <!-- Handled in injected code -->
-        </modify-argument>
-    </modify-function>
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QDesktopServices___" quote-before-line="}// class"/>
-        </inject-code>
-
-    </object-type>
-  <object-type name="QDialog">
-<!--     <modify-function signature="setVisible(bool)" remove="all"/> // properties_d -->
-
-    <modify-function signature="setExtension(QWidget*)" remove="all"/>
-    <modify-function signature="exec()" access="non-final"/>
-    <modify-function signature="open()" virtual-slot="yes" />
-    <modify-function signature="extension()const" remove="all"/> <!--### Obsolete in 4.3-->
-    <modify-function signature="orientation()const" remove="all"/> <!--### Obsolete in 4.3-->
-    <modify-function signature="setOrientation(Qt::Orientation)" remove="all"/> <!--### Obsolete in 4.3-->
-    <modify-function signature="showExtension(bool)" remove="all"/> <!--### Obsolete in 4.3-->
-  </object-type>
-  <object-type name="QDialogButtonBox">
-    <modify-function signature="addButton(QAbstractButton*,QDialogButtonBox::ButtonRole)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="removeButton(QAbstractButton*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-  <object-type name="QDirModel">
-    <modify-function signature="parent()const" remove="java"/>
-    <modify-function signature="setIconProvider(QFileIconProvider*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcIconProvider"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-  <object-type name="QDoubleValidator"/>
-  <object-type name="QFileIconProvider"/>
-  <object-type name="QWizard">
-    <!-- ### Requires correct class name in meta object -->
-    <modify-function signature="setDefaultProperty(const char *, const char *, const char *)" remove="all"/>
-    <modify-function signature="addPage(QWizardPage*)">
-        <modify-argument index="1">
-            <no-null-pointer/>
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setButton(QWizard::WizardButton,QAbstractButton*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setPage(int,QWizardPage*)">
-        <modify-argument index="2">
-            <no-null-pointer/>
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-
-  </object-type>
-  <object-type name="QWizardPage">
-    <!-- ### Reduced functionality due to meta object having missing information -->
-    <modify-function signature="registerField(const QString &amp;, QWidget *, const char *, const char *)">
-        <access modifier="private"/>
-        <modify-argument index="3">
-            <remove-default-expression/>
-        </modify-argument>
-        <modify-argument index="4">
-            <remove-default-expression/>
-        </modify-argument>
-    </modify-function>
-
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QWizardPage___" quote-before-line="}// class"/>
-        </inject-code>
-
-    </object-type>
-  <object-type name="QFocusFrame">
-<!--    <modify-function signature="initStyleOption(QStyleOption*)const">
-        <access modifier="private"/>
-    </modify-function> -->
-    <modify-function signature="setWidget(QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcWidget"/>
-        </modify-argument>
-    </modify-function>
-<!--    <inject-code>
-        <insert-template name="gui.init_style_option">
-            <replace from="%TYPE" to="QStyleOption"/>
-        </insert-template>
-    </inject-code> -->
-  </object-type>
-  <object-type name="QFontComboBox"/>
-  <object-type name="QFontDialog">
-      <modify-function signature="open(QObject *, const char *)" remove="all"/> <!-- # TODO -->
-
-<!--        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QFontDialog___" quote-before-line="}// class"/>
-        </inject-code>
-
-        <template name="gui.fontdialog_get_font_general">
-            public static Result getFont(%FONT_ARGUMENT %COMMA QWidget parent %STRING_ARGUMENT) {
-                QNativePointer np = new QNativePointer(QNativePointer.Type.Boolean);
-                QFont returned = getFont(np, %FONT_CALL_ARGUMENT %COMMA parent %STRING_CALL_ARGUMENT);
-                return new Result(returned, np.booleanValue());
-            }
-        </template>
-
-        <template name="gui.fontdialog_get_font_nocaption">
-            <insert-template name="gui.fontdialog_get_font_general">
-                <replace from="%STRING_ARGUMENT" to=""/>
-                <replace from="%STRING_CALL_ARGUMENT" to=""/>
-            </insert-template>
-
-            public static Result getFont(%FONT_ARGUMENT) {
-                return getFont(%FONT_CALL_ARGUMENT %COMMA (QWidget) null);
-            }
-        </template>
-
-        <modify-function signature="getFont(bool*,QFont,QWidget*,QString)">
-            <access modifier="private"/>
-        </modify-function>
-        <inject-code>
-            <insert-template name="gui.fontdialog_get_font_general">
-                <replace from="%FONT_ARGUMENT %COMMA" to="QFont initial,"/>
-                <replace from="%STRING_ARGUMENT" to=", String caption"/>
-                <replace from="%FONT_CALL_ARGUMENT %COMMA" to="initial,"/>
-                <replace from="%STRING_CALL_ARGUMENT" to=", caption"/>
-            </insert-template>
-        </inject-code>
-
-        <modify-function signature="getFont(bool*,QWidget*)">
-            <access modifier="private"/>
-            <modify-argument index="2">
-                <remove-default-expression/>
-            </modify-argument>
-        </modify-function>
-        <inject-code>
-            <insert-template name="gui.fontdialog_get_font_nocaption">
-                <replace from="%FONT_ARGUMENT" to=""/>
-                <replace from="%COMMA" to=""/>
-                <replace from="%FONT_CALL_ARGUMENT" to=""/>
-            </insert-template>
-        </inject-code>
-
-        <modify-function signature="getFont(bool*,QFont,QWidget*)">
-            <access modifier="private"/>
-            <modify-argument index="3">
-                <remove-default-expression/>
-            </modify-argument>
-        </modify-function>
-        <inject-code>
-            <insert-template name="gui.fontdialog_get_font_nocaption">
-                <replace from="%FONT_ARGUMENT" to="QFont initial"/>
-                <replace from="%COMMA" to=", "/>
-                <replace from="%FONT_CALL_ARGUMENT" to="initial"/>
-            </insert-template>
-        </inject-code>
-        -->
-    </object-type>
-  <object-type name="QGraphicsEllipseItem" delete-in-main-thread="yes">
-  	<modify-function signature="setExtension(QGraphicsItem::Extension,QVariant)" remove="all"/>
-	<modify-function signature="supportsExtension(QGraphicsItem::Extension)const" remove="all"/>
-  <!--
-        <modify-function signature="QGraphicsEllipseItem(QGraphicsItem*,QGraphicsScene*)">
-            <inject-code position="end">
-                <argument-map index="1" meta-name="%1"/>
-                if (%1 != null) disableGarbageCollection();
-            </inject-code>
-        </modify-function>
-        <modify-function signature="QGraphicsEllipseItem(const QRectF &amp;,QGraphicsItem*,QGraphicsScene*)">
-            <inject-code position="end">
-                <argument-map index="2" meta-name="%2"/>
-                if (%2 != null) disableGarbageCollection();
-            </inject-code>
-        </modify-function>
-        <modify-function signature="QGraphicsEllipseItem(double,double,double,double,QGraphicsItem*,QGraphicsScene*)">
-            <inject-code position="end">
-                <argument-map index="5" meta-name="%5"/>
-                if (%5 != null) disableGarbageCollection();
-            </inject-code>
-        </modify-function>-->
-    </object-type>
-  <object-type name="QGraphicsItemAnimation">
-    <modify-function signature="setItem(QGraphicsItem*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcItem"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setTimeLine(QTimeLine*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcTimeLine"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-  <object-type name="QGraphicsItemGroup" delete-in-main-thread="yes">
-      <modify-function signature="matrix()const" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="resetMatrix()" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="sceneMatrix()const" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="setMatrix(QMatrix, bool)" remove="all"/> <!--### Obsolete in 4.3-->
-  <!--
-        <modify-function signature="QGraphicsItemGroup(QGraphicsItem*,QGraphicsScene*)">
-            <inject-code position="end">
-                <argument-map index="1" meta-name="%1"/>
-                if (%1 != null) disableGarbageCollection();
-            </inject-code>
-        </modify-function>
-        <modify-function signature="addToGroup(QGraphicsItem*)">
-            <modify-argument index="1">
-                <define-ownership class="java" owner="c++"/>
-            </modify-argument>
-        </modify-function>
-        <modify-function signature="removeFromGroup(QGraphicsItem*)">
-            <modify-argument index="1">
-                <reference-count action="ignore"/>
-            </modify-argument>
-            <inject-code position="end">
-                <argument-map index="1" meta-name="%1"/>
-                if (parentItem() == null)
-                %1.reenableGarbageCollection();
-            </inject-code>
-        </modify-function>
-    -->
-    </object-type>
-  <object-type name="QGraphicsLineItem" delete-in-main-thread="yes">
-      <modify-function signature="matrix()const" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="resetMatrix()" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="sceneMatrix()const" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="setMatrix(QMatrix, bool)" remove="all"/> <!--### Obsolete in 4.3-->
-      	<modify-function signature="setExtension(QGraphicsItem::Extension,QVariant)" remove="all"/>
-	<modify-function signature="supportsExtension(QGraphicsItem::Extension)const" remove="all"/>
-    <!--
-        <modify-function signature="QGraphicsLineItem(QGraphicsItem*,QGraphicsScene*)">
-            <inject-code position="end">
-                <argument-map index="1" meta-name="%1"/>
-                if (%1 != null) disableGarbageCollection();
-            </inject-code>
-        </modify-function>
-        <modify-function signature="QGraphicsLineItem(const QLineF &amp;,QGraphicsItem*,QGraphicsScene*)">
-            <inject-code position="end">
-                <argument-map index="2" meta-name="%2"/>
-                if (%2 != null) disableGarbageCollection();
-            </inject-code>
-        </modify-function>
-        <modify-function signature="QGraphicsLineItem(double,double,double,double,QGraphicsItem*,QGraphicsScene*)">
-            <inject-code position="end">
-                <argument-map index="5" meta-name="%5"/>
-                if (%5 != null) disableGarbageCollection();
-            </inject-code>
-        </modify-function>
-    -->
-    </object-type>
-  <object-type name="QGraphicsPathItem" delete-in-main-thread="yes">
-  	<modify-function signature="setExtension(QGraphicsItem::Extension,QVariant)" remove="all"/>
-	<modify-function signature="supportsExtension(QGraphicsItem::Extension)const" remove="all"/>
-  <!--
-        <modify-function signature="QGraphicsPathItem(QGraphicsItem*,QGraphicsScene*)">
-            <inject-code position="end">
-                <argument-map index="1" meta-name="%1"/>
-                if (%1 != null) disableGarbageCollection();
-            </inject-code>
-        </modify-function>
-        <modify-function signature="QGraphicsPathItem(const QPainterPath &amp;,QGraphicsItem*,QGraphicsScene*)">
-            <inject-code position="end">
-                <argument-map index="2" meta-name="%2"/>
-                if (%2 != null) disableGarbageCollection();
-            </inject-code>
-        </modify-function>
-    -->
-    </object-type>
-
-  <object-type name="QGraphicsPixmapItem" delete-in-main-thread="yes">
-      <modify-function signature="matrix()const" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="resetMatrix()" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="sceneMatrix()const" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="setMatrix(QMatrix, bool)" remove="all"/> <!--### Obsolete in 4.3-->
-      	<modify-function signature="setExtension(QGraphicsItem::Extension,QVariant)" remove="all"/>
-	<modify-function signature="supportsExtension(QGraphicsItem::Extension)const" remove="all"/>
-    <!--
-        <modify-function signature="QGraphicsPixmapItem(QGraphicsItem*,QGraphicsScene*)">
-            <inject-code position="end">
-                <argument-map index="1" meta-name="%1"/>
-                if (%1 != null) disableGarbageCollection();
-            </inject-code>
-        </modify-function>
-        <modify-function signature="QGraphicsPixmapItem(const QPixmap &amp;,QGraphicsItem*,QGraphicsScene*)">
-            <inject-code position="end">
-                <argument-map index="2" meta-name="%2"/>
-                if (%2 != null) disableGarbageCollection();
-            </inject-code>
-        </modify-function>
-    -->
-    </object-type>
-  <object-type name="QGraphicsPolygonItem" delete-in-main-thread="yes">
-  	<modify-function signature="setExtension(QGraphicsItem::Extension,QVariant)" remove="all"/>
-	<modify-function signature="supportsExtension(QGraphicsItem::Extension)const" remove="all"/>
-    <!--
-        <modify-function signature="QGraphicsPolygonItem(QGraphicsItem*,QGraphicsScene*)">
-            <inject-code position="end">
-                <argument-map index="1" meta-name="%1"/>
-                if (%1 != null) disableGarbageCollection();
-            </inject-code>
-        </modify-function>
-        <modify-function signature="QGraphicsPolygonItem(const QPolygonF &amp;,QGraphicsItem*,QGraphicsScene*)">
-            <inject-code position="end">
-                <argument-map index="2" meta-name="%2"/>
-                if (%2 != null) disableGarbageCollection();
-            </inject-code>
-        </modify-function>
-    -->
-    </object-type>
-  <object-type name="QGraphicsRectItem" delete-in-main-thread="yes">
-  	<modify-function signature="setExtension(QGraphicsItem::Extension,QVariant)" remove="all"/>
-	<modify-function signature="supportsExtension(QGraphicsItem::Extension)const" remove="all"/>
-  <!--
-        <modify-function signature="QGraphicsRectItem(QGraphicsItem*,QGraphicsScene*)">
-            <inject-code position="end">
-                <argument-map index="1" meta-name="%1"/>
-                if (%1 != null) disableGarbageCollection();
-            </inject-code>
-        </modify-function>
-        <modify-function signature="QGraphicsRectItem(double,double,double,double,QGraphicsItem*,QGraphicsScene*)">
-            <inject-code position="end">
-                <argument-map index="5" meta-name="%5"/>
-                if (%5 != null) disableGarbageCollection();
-            </inject-code>
-        </modify-function>
-        <modify-function signature="QGraphicsRectItem(const QRectF &amp;,QGraphicsItem*,QGraphicsScene*)">
-            <inject-code position="end">
-                <argument-map index="2" meta-name="%2"/>
-                if (%2 != null) disableGarbageCollection();
-            </inject-code>
-        </modify-function> -->
-    </object-type>
-  <object-type name="QGraphicsSimpleTextItem" delete-in-main-thread="yes">
-  	<modify-function signature="setExtension(QGraphicsItem::Extension,QVariant)" remove="all"/>
-	<modify-function signature="supportsExtension(QGraphicsItem::Extension)const" remove="all"/>
-    <!--
-        <modify-function signature="QGraphicsSimpleTextItem(QGraphicsItem*,QGraphicsScene*)">
-            <inject-code position="end">
-                <argument-map index="1" meta-name="%1"/>
-                if (%1 != null) disableGarbageCollection();
-            </inject-code>
-        </modify-function>
-        <modify-function signature="QGraphicsSimpleTextItem(const QString &amp;,QGraphicsItem*,QGraphicsScene*)">
-            <inject-code position="end">
-                <argument-map index="2" meta-name="%2"/>
-                if (%2 != null) disableGarbageCollection();
-            </inject-code>
-        </modify-function>
-    -->
-    </object-type>
-  <object-type name="QHBoxLayout"/>
-  <object-type name="QHeaderView">
-<!--    <modify-function signature="initStyleOption(QStyleOptionHeader*)const">
-        <access modifier="private"/>
-    </modify-function>
--->
-    <modify-function signature="paintSection(QPainter*,QRect,int)const">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-<!--
-    <inject-code>
-        <insert-template name="gui.init_style_option">
-            <replace from="%TYPE" to="QStyleOptionHeader"/>
-        </insert-template>
-    </inject-code>-->
-    <modify-function signature="setModel(QAbstractItemModel*)">
-        <modify-argument index="1">
-            <reference-count declare-variable="QAbstractItemView" action="set" variable-name="__rcItemModel"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-  <object-type name="QIconEngine">
-    <modify-function signature="paint(QPainter*,QRect,QIcon::Mode,QIcon::State)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-  </object-type>
-  <object-type name="QIconEngineV2">
-        <extra-includes>
-            <include file-name="qt.core.QSize" location="java"/>
-        </extra-includes>
-    <modify-function signature="read(QDataStream&amp;)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="write(QDataStream&amp;)const">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-
-    <modify-function signature="virtual_hook(int,void*)" remove="all"/>
-
-    <modify-function signature="clone()const">
-        <remove class="java"/>
-<!--        <modify-argument index="return">
-            <define-ownership class="shell" owner="c++"/>
-        </modify-argument>-->
-    </modify-function>
-	
-    <inject-code>
-        <import-file name="typesystem_gui-java.java" quote-after-line="class QIconEngineV2___" quote-before-line="}// class"/>
-    </inject-code>
-  </object-type>
-  <object-type name="QImageWriter">
-  <modify-function signature="setDevice(QIODevice*)">
-    <modify-argument index="1">
-        <reference-count action="set" variable-name="__rcDevice"/>
-    </modify-argument>
-  </modify-function>
-      <modify-function signature="description()const" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="setDescription(QString)" remove="all"/> <!--### Obsolete in 4.3-->
-  </object-type>
-  <object-type name="QInputContextFactory"/>
-  <object-type name="QIntValidator"/>
-  <object-type name="QItemDelegate">
-    <modify-function signature="doLayout(QStyleOptionViewItem,QRect*,QRect*,QRect*,bool)const">
-        <remove/>
-    </modify-function>
-
-    <modify-function signature="drawCheck(QPainter*,QStyleOptionViewItem,QRect,Qt::CheckState)const">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="drawDecoration(QPainter*,QStyleOptionViewItem,QRect,QPixmap)const">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="drawDisplay(QPainter*,QStyleOptionViewItem,QRect,QString)const">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="drawFocus(QPainter*,QStyleOptionViewItem,QRect)const">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-
-
-    <modify-function signature="selected(QPixmap,QPalette,bool)const">
-        <remove/>
-    </modify-function>
-    <modify-function signature="setItemEditorFactory(QItemEditorFactory*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcItemEditorFactory"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setEditorData(QWidget*,QModelIndex)const">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setModelData(QWidget*,QAbstractItemModel*,QModelIndex)const">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-
-  </object-type>
-  <object-type name="QItemEditorCreatorBase"/>
-  <object-type name="QItemEditorFactory">
-    <modify-function signature="registerEditor(QVariant::Type, QItemEditorCreatorBase *)">
-        <modify-argument index="2">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setDefaultFactory(QItemEditorFactory *)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcDefaultItemEditorFactory"/>
-        </modify-argument>
-    </modify-function>
-  
-        <modify-function signature="setDefaultFactory(QItemEditorFactory*)">
-            <modify-argument index="1">
-                <define-ownership class="java" owner="c++"/>
-            </modify-argument>
-        </modify-function>
-    </object-type>
-  <object-type name="QItemSelectionModel"/>
-  <object-type name="QTreeModel"/>
-  <object-type name="QListView"/>
-  <object-type name="QColumnView">
-    <modify-function signature="setPreviewWidget(QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setModel(QAbstractItemModel*)">
-        <modify-argument index="1">
-            <reference-count declare-variable="QAbstractItemView" action="set" variable-name="__rcItemModel"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setSelectionModel(QItemSelectionModel*)">
-        <modify-argument index="1">
-            <no-null-pointer/>
-            <reference-count declare-variable="QAbstractItemView" action="set" variable-name="__rcItemSelectionModel"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-  <object-type name="QMainWindow">
-    <modify-function signature="addDockWidget(Qt::DockWidgetArea,QDockWidget*,Qt::Orientation)">
-        <modify-argument index="2">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="addDockWidget(Qt::DockWidgetArea,QDockWidget*)">
-        <modify-argument index="2">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="addToolBar(QToolBar*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="addToolBar(Qt::ToolBarArea,QToolBar*)">
-        <modify-argument index="2">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertToolBar(QToolBar*,QToolBar*)">
-        <modify-argument index="2">
-            <reference-count action="ignore"/>
-        </modify-argument>
-        <modify-argument index="2">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertToolBarBreak(QToolBar*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="removeDockWidget(QDockWidget*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="removeToolBar(QToolBar*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="removeToolBarBreak(QToolBar*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setCentralWidget(QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setMenuBar(QMenuBar*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setMenuWidget(QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setStatusBar(QStatusBar*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-
-  </object-type>
-  <object-type name="QMdiArea">
-    <modify-function signature="addSubWindow(QWidget*,QFlags&lt;Qt::WindowType&gt;)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="removeSubWindow(QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="setActiveSubWindow(QMdiSubWindow*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="setupViewport(QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-
-  </object-type>
-  <object-type name="QMdiSubWindow">
-    <modify-function signature="setSystemMenu(QMenu*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setWidget(QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-  <object-type name="QMenu">
-    <modify-function signature="addAction(QAction *)" remove="all"/>
-    <modify-function signature="addMenu(QMenu*)">
-        <modify-argument index="1">
-            <reference-count action="add" variable-name="__rcMenus"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertMenu(QAction*,QMenu*)">
-        <modify-argument index="2">
-            <reference-count action="add" variable-name="__rcMenus"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertSeparator(QAction*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setActiveAction(QAction*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setDefaultAction(QAction*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setNoReplayFor(QWidget*)">
-        <remove/>
-    </modify-function>
-    <modify-function signature="initStyleOption(QStyleOptionMenuItem*,const QAction*)const">
-        <access modifier="private"/>
-    </modify-function>
-
-    <modify-function signature="addAction(QString,const QObject*,const char*,QKeySequence)">
-        <remove/>
-    </modify-function>
-
-    <modify-function signature="addAction(QIcon,QString,const QObject*,const char*,QKeySequence)">
-        <remove/>
-    </modify-function>
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QMenu___" quote-before-line="}// class"/>
-        </inject-code>
-
-<!--
-        <template name="gui.addAction">
-        public final QAction addAction(%EXTRA String text, Object receiver, String method %END_EXTRA) {
-            QAction returned = addAction(%CALL_EXTRA text %END_CALL_EXTRA);
-            %POST_CALL
-            returned.triggered.connect(receiver, method);
-
-            return returned;
-        }
-
-        public final QAction addAction(%EXTRA String text, qt.QSignalEmitter.AbstractSignal signal %END_EXTRA) {
-            QAction returned = addAction(%CALL_EXTRA text %END_CALL_EXTRA);
-            %POST_CALL
-            returned.triggered.connect(signal);
-            return returned;
-        }
-        </template>
-
-        <template name="gui.addAction_with_shortcut">
-            <insert-template name="gui.addAction">
-                <replace from="%POST_CALL" to="returned.setShortcut(shortcut);"/>
-                <replace from=" %END_EXTRA" to=", QKeySequence shortcut"/>
-                <replace from=" %END_CALL_EXTRA" to=""/>
-            </insert-template>
-
-        public final QAction addAction(%EXTRA String text, Object receiver, String method) {
-            return addAction(%CALL_EXTRA text, receiver, method, new QKeySequence(0));
-        }
-
-        public final QAction addAction(%EXTRA String text, qt.QSignalEmitter.AbstractSignal signal) {
-            return addAction(%CALL_EXTRA text, signal, new QKeySequence(0));
-        }
-        </template>
-
-        <inject-code>
-            <insert-template name="gui.addAction_with_shortcut">
-                <replace from="%EXTRA " to=""/>
-                <replace from="%CALL_EXTRA " to=""/>
-            </insert-template>
-        </inject-code>
-
-        <inject-code>
-            <insert-template name="gui.addAction_with_shortcut">
-                <replace from="%EXTRA" to="QIcon icon,"/>
-                <replace from="%CALL_EXTRA" to="icon,"/>
-            </insert-template>
-        </inject-code>-->
-    </object-type>
-
-  <object-type name="QMenuBar">
-    <modify-function signature="addAction(QAction *)" remove="all"/>
-    <modify-function signature="addAction(QString,const QObject*,const char*)">
-        <remove/>
-    </modify-function>
-
-    <modify-function signature="addMenu(QMenu*)">
-        <modify-argument index="1">
-            <reference-count action="add" variable-name="__rcMenus"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertMenu(QAction*,QMenu*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-        <modify-argument index="2">
-            <reference-count action="add" variable-name="__rcMenus"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertSeparator(QAction*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setActiveAction(QAction*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setCornerWidget(QWidget*,Qt::Corner)    ">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QMenuBar___" quote-before-line="}// class"/>
-        </inject-code>
-        <inject-code>
-            <insert-template name="gui.addAction">
-                <replace from="%POST_CALL" to=""/>
-                <replace from=" %END_EXTRA" to=""/>
-                <replace from=" %END_CALL_EXTRA" to=""/>
-                <replace from="%EXTRA " to=""/>
-                <replace from="%CALL_EXTRA " to=""/>
-            </insert-template>
-        </inject-code>
-
-
-    </object-type>
-  <object-type name="QMotifStyle">
-    <modify-function signature="standardPixmap(QStyle::StandardPixmap, const QStyleOption*, const QWidget*)const" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="standardIconImplementation(QStyle::StandardPixmap, const QStyleOption *, const QWidget *)const" virtual-slot="yes"/>
-  </object-type>
-  <object-type name="QPainterPathStroker"/>
-
-  <object-type name="QPictureIO">
-      <modify-function signature="QPictureIO(QIODevice*,const char*)">
-        <access modifier="private"/>
-         <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcDevice"/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="setIODevice(QIODevice*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcDevice"/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="QPictureIO(QString,const char*)">
-        <access modifier="private"/>
-    </modify-function>
-
-    <modify-function signature="format()const">
-        <access modifier="private"/>
-        <rename to="format_private"/>
-    </modify-function>
-
-    <modify-function signature="parameters()const">
-        <access modifier="private"/>
-        <rename to="parameters_private"/>
-    </modify-function>
-
-    <modify-function signature="setFormat(const char*)">
-        <access modifier="private"/>
-    </modify-function>
-
-    <modify-function signature="setParameters(const char*)">
-        <access modifier="private"/>
-    </modify-function>
-
-  
-        <inject-code>
-
-        public this(QIODevice ioDevice, string format) {
-            this(ioDevice, toStringz(format));
-        }
-        
-        public this(string fileName, string format) {
-            this(fileName, toStringz(format));
-        }
-
-            <insert-template name="core.return_string_instead_of_char*">
-                <replace from="%FUNCTION_NAME" to="format"/>
-            </insert-template>
-            <insert-template name="core.return_string_instead_of_char*">
-                <replace from="%FUNCTION_NAME" to="parameters"/>
-            </insert-template>
-            <insert-template name="core.call_with_string_instead_of_char*">
-                <replace from="%FUNCTION_NAME" to="setFormat"/>
-                <replace from="%ARG_NAME" to="format"/>
-            </insert-template>
-            <insert-template name="core.call_with_string_instead_of_char*">
-                <replace from="%FUNCTION_NAME" to="setParameters"/>
-                <replace from="%ARG_NAME" to="parameters"/>
-            </insert-template>
-        </inject-code>
-    </object-type>
-
-  <object-type name="QPixmapCache">
-    <modify-function signature="find(QString)">
-        <remove/>
-    </modify-function>
-<!--
-    <modify-function signature="find(QString,QPixmap&amp;)">
-        <access modifier="private"/>
-    </modify-function>
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QPixmapCache___" quote-before-line="}// class"/>
-        </inject-code>
--->
-    </object-type>
-  <object-type name="QPlastiqueStyle">
-    <modify-function signature="standardPixmap(QStyle::StandardPixmap, const QStyleOption*, const QWidget*)const" remove="all"/> <!--### Obsolete in 4.3-->
-    <modify-function signature="standardIconImplementation(QStyle::StandardPixmap, const QStyleOption *, const QWidget *)const" virtual-slot="yes"/>
-    <modify-function signature="layoutSpacingImplementation(QSizePolicy::ControlType, QSizePolicy::ControlType, Qt::Orientation, const QStyleOption *, const QWidget *) const" virtual-slot="yes"/>
-  </object-type>
-  <object-type name="QPrintDialog">
-      <modify-function signature="accepted(QPrinter *)">
-          <rename to="accepted_printer"/>
-      </modify-function>
-      <modify-function signature="accepted()" remove="all"/>
-      <modify-function signature="open(QObject *, const char *)" remove="all"/> <!-- # TODO -->
-
-  </object-type>
-  <object-type name="QPrintEngine"/>
-  <object-type name="QProgressBar">
-<!--    <modify-function signature="initStyleOption(QStyleOptionProgressBar*)const">
-        <access modifier="private"/>
-    </modify-function>
-  
-        <inject-code>
-            <insert-template name="gui.init_style_option">
-                <replace from="%TYPE" to="QStyleOptionProgressBar"/>
-            </insert-template>
-        </inject-code> -->
-    </object-type>
-  <object-type name="QPushButton">
-<!--    <modify-function signature="initStyleOption(QStyleOptionButton*)const">
-        <access modifier="private"/>
-    </modify-function>
--->
-<!--     <modify-function signature="setDefault(bool)" rename="default_"/> // properties_d -->
-
-
-    <modify-function signature="setMenu(QMenu*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcMenu"/>
-        </modify-argument>
-    </modify-function>
-  <!--
-        <inject-code>
-            <insert-template name="gui.init_style_option">
-                <replace from="%TYPE" to="QStyleOptionButton"/>
-            </insert-template>
-        </inject-code> -->
-    </object-type>
-  <object-type name="QRegExpValidator"/>
-  <object-type name="QScrollArea">
-    <modify-function signature="setWidget(QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-  <object-type name="QSessionManager"/>
-  <object-type name="QShortcut">
-    <modify-function signature="QShortcut(QKeySequence,QWidget*,const char*,const char*,Qt::ShortcutContext)">
-        <access modifier="private"/>
-        <modify-argument index="3">
-            <remove-default-expression/>
-        </modify-argument>
-        <modify-argument index="4">
-            <remove-default-expression/>
-        </modify-argument>
-        <modify-argument index="5">
-            <remove-default-expression/>
-        </modify-argument>
-    </modify-function>
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QShortcut___" quote-before-line="}// class"/>
-        </inject-code>
-
-    </object-type>
-  <object-type name="QSizeGrip"/>
-  <object-type name="QSound"/>
-  <object-type name="QSpacerItem">
-  </object-type>
-  <object-type name="QStandardItem">
-    <modify-function signature="operator=(QStandardItem)" remove="all"/>
-    <modify-function signature="operator&lt;(QStandardItem)const">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="read(QDataStream&amp;)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="write(QDataStream&amp;)const">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-
-  
-        <modify-function signature="appendColumn(const QList&lt;QStandardItem *&gt; &amp;)">
-            <modify-argument index="1">
-                <define-ownership class="java" owner="c++"/>
-            </modify-argument>
-        </modify-function>
-        <modify-function signature="appendRow(const QList&lt;QStandardItem *&gt; &amp;)">
-            <modify-argument index="1">
-                <define-ownership class="java" owner="c++"/>
-            </modify-argument>
-        </modify-function>
-        <modify-function signature="appendRow(QStandardItem *)">
-            <modify-argument index="1">
-                <define-ownership class="java" owner="c++"/>
-            </modify-argument>
-        </modify-function>
-        <modify-function signature="insertColumn(int, const QList&lt;QStandardItem *&gt; &amp;)">
-            <modify-argument index="2">
-                <define-ownership class="java" owner="c++"/>
-            </modify-argument>
-        </modify-function>
-        <modify-function signature="insertRow(int, const QList&lt;QStandardItem *&gt; &amp;)">
-            <modify-argument index="2">
-                <define-ownership class="java" owner="c++"/>
-            </modify-argument>
-        </modify-function>
-        <modify-function signature="insertRow(int, QStandardItem *)">
-            <modify-argument index="2">
-                <define-ownership class="java" owner="c++"/>
-            </modify-argument>
-        </modify-function>
-        <modify-function signature="setChild(int,int,QStandardItem *)">
-            <modify-argument index="3">
-                <define-ownership class="java" owner="c++"/>
-            </modify-argument>
-        </modify-function>
-        <modify-function signature="setChild(int,QStandardItem *)">
-            <modify-argument index="2">
-                <define-ownership class="java" owner="c++"/>
-            </modify-argument>
-        </modify-function>
-        <modify-function signature="takeChild(int,int)">
-            <modify-argument index="return">
-                <define-ownership class="java" owner="default"/>
-            </modify-argument>
-        </modify-function>
-        <modify-function signature="takeColumn(int)">
-            <modify-argument index="return">
-                <define-ownership class="java" owner="default"/>
-            </modify-argument>
-        </modify-function>
-        <modify-function signature="takeRow(int)">
-            <modify-argument index="return">
-                <define-ownership class="java" owner="default"/>
-            </modify-argument>
-        </modify-function>
-        <modify-function signature="clone()const">
-            <modify-argument index="return">
-                <define-ownership class="shell" owner="c++"/>
-            </modify-argument>
-        </modify-function>
-    </object-type>
-  <object-type name="QStatusBar">
-    <modify-function signature="addPermanentWidget(QWidget *, int)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="addWidget(QWidget *, int)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="removeWidget(QWidget *)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertPermanentWidget(int, QWidget *, int)">
-        <modify-argument index="2">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertWidget(int, QWidget *, int)">
-        <modify-argument index="2">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-  <object-type name="QStringListModel"/>
-  <object-type name="QStyleFactory"/>
-  <object-type name="QStyleHintReturn">
-        <modify-field name="version">
-          <rename to="version_"/>
-      </modify-field>
-  </object-type>
-  <object-type name="QStyleHintReturnVariant"/>
-  <object-type name="QStyleHintReturnMask"/>
-  <object-type name="QStylePainter" delete-in-main-thread="yes"/>
-  <object-type name="QSyntaxHighlighter">
-    <modify-function signature="setCurrentBlockUserData(QTextBlockUserData*)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setDocument(QTextDocument*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcDocument"/>
-        </modify-argument>
-    </modify-function>
-
-  </object-type>
-  <object-type name="QSystemTrayIcon">
-    <modify-function signature="setContextMenu(QMenu*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcContextMenu"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-  <object-type name="QTableView">
-    <modify-function signature="setHorizontalHeader(QHeaderView*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setVerticalHeader(QHeaderView*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setModel(QAbstractItemModel*)">
-        <modify-argument index="1">
-            <reference-count declare-variable="QAbstractItemView" action="set" variable-name="__rcItemModel"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setSelectionModel(QItemSelectionModel*)">
-        <modify-argument index="1">
-            <no-null-pointer/>
-            <reference-count declare-variable="QAbstractItemView" action="set" variable-name="__rcItemSelectionModel"/>
-        </modify-argument>
-    </modify-function>
-
-      <modify-function signature="sortByColumn(int)" remove="all"/> <!--### Obsolete in 4.3-->
-  </object-type>
-  <object-type name="QTextBlockGroup" delete-in-main-thread="yes"/>
-  <object-type name="QTextBlockUserData" delete-in-main-thread="yes"/>
-  <object-type name="QTextItem" delete-in-main-thread="yes"/>
-  <object-type name="QTextList" delete-in-main-thread="yes">
-    <modify-function signature="format()const" rename="textListFormat"/>
-
-      <modify-function signature="isEmpty()const" remove="all"/> <!--### Obsolete in 4.3-->
-  </object-type>
-  <object-type name="QTextObject" delete-in-main-thread="yes"/>
-  <object-type name="QTextObjectInterface" delete-in-main-thread="yes">
-    <modify-function signature="drawObject(QPainter*,QRectF,QTextDocument*,int,QTextFormat)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-  </object-type>
-  <object-type name="QTimeEdit"/>
-  <object-type name="QToolBox">
-    <modify-function signature="addItem(QWidget*,QString)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="addItem(QWidget*,QIcon,QString)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertItem(int,QWidget*,QIcon,QString)">
-        <modify-argument index="2">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertItem(int,QWidget*,QString)">
-        <modify-argument index="2">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setCurrentWidget(QWidget*)  ">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-  <object-type name="QToolButton">
-<!--    <modify-function signature="initStyleOption(QStyleOptionToolButton*)const">
-        <access modifier="private"/>
-    </modify-function>
--->
-    <modify-function signature="setDefaultAction(QAction *)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcDefaultAction"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setMenu(QMenu *)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcMenu"/>
-        </modify-argument>
-    </modify-function>
-  <!--
-        <inject-code>
-            <insert-template name="gui.init_style_option">
-                <replace from="%TYPE" to="QStyleOptionToolButton"/>
-            </insert-template>
-        </inject-code> -->
-    </object-type>
-  <object-type name="QToolTip"/>
-  <object-type name="QTreeView">
-
-    <modify-function signature="drawBranches(QPainter*,QRect,QModelIndex)const">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="drawRow(QPainter*,QStyleOptionViewItem,QModelIndex)const">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-
-    <modify-function signature="setHeader(QHeaderView*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-   </modify-function>
-   <modify-function signature="setModel(QAbstractItemModel*)">
-        <modify-argument index="1">
-            <reference-count declare-variable="QAbstractItemView" action="set" variable-name="__rcItemModel"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setSelectionModel(QItemSelectionModel*)">
-        <modify-argument index="1">
-            <no-null-pointer/>
-            <reference-count declare-variable="QAbstractItemView" action="set" variable-name="__rcItemSelectionModel"/>
-        </modify-argument>
-    </modify-function>
-
-      <modify-function signature="sortByColumn(int)" remove="all"/> <!--### Obsolete in 4.3-->
-  </object-type>
-  <object-type name="QUndoCommand">
-    <modify-function signature="mergeWith(const QUndoCommand*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-  </object-type>
-  <object-type name="QUndoGroup">
-    <modify-function signature="addStack(QUndoStack*)">
-        <modify-argument index="1">
-            <reference-count action="add" variable-name="__rcStacks"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="removeStack(QUndoStack*)">
-        <modify-argument index="1">
-            <reference-count action="remove" variable-name="__rcStacks"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setActiveStack(QUndoStack*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-
-  <object-type name="QUndoStack">
-        <modify-function signature="push(QUndoCommand *)">
-            <modify-argument index="1">
-                <define-ownership class="java" owner="c++"/>
-            </modify-argument>
-        </modify-function>
-    </object-type>
-
-  <object-type name="QUndoView">
-    <modify-function signature="setGroup(QUndoGroup *)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcGroupOrStack"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setStack(QUndoStack *)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcGroupOrStack"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="QUndoView(QUndoGroup *,QWidget *)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcGroupOrStack"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="QUndoView(QUndoStack *,QWidget *)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcGroupOrStack"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-  <object-type name="QVBoxLayout"/>
-  <object-type name="QValidator">
-<!--        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QValidator___" quote-before-line="}// class"/>
-        </inject-code>
-
-
-        <modify-function signature="fixup(QString&amp;)const">
-            <modify-argument index="1">
-                <replace-type modified-type="java.lang.String"/>
-                <conversion-rule class="shell">
-                    jobject %out = (jobject) qtjambi_from_qstring(__jni_env, %in);
-                </conversion-rule>
-                <conversion-rule class="native">
-                    QString %out = qtjambi_to_qstring(__jni_env, (jstring) %in);
-                    QString *__qt_converted = &amp;%out;
-                </conversion-rule>
-            </modify-argument>
-
-            <modify-argument index="0">
-                <replace-type modified-type="java.lang.String"/>
-                <conversion-rule class="native">
-                    jobject %out = (jobject) qtjambi_from_qstring(__jni_env, *__qt_converted);
-                </conversion-rule>
-                <conversion-rule class="shell">
-                    %1 = qtjambi_to_qstring(__jni_env, (jstring) %in);
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>
-
-        <modify-function signature="validate(QString&amp;,int&amp;)const">
-            <modify-argument index="1">
-                <replace-type modified-type="qt.gui.QValidator$QValidationData"/>
-                <conversion-rule class="shell">
-                    <insert-template name="gui.convert_validationdata_to_java">
-                        <replace from="%STRING" to="%1"/>
-                        <replace from="%POS" to="%2"/>
-                    </insert-template>
-                </conversion-rule>
-                <conversion-rule class="native">
-                    <insert-template name="gui.convert_validationdata_to_string"/>
-                </conversion-rule>
-            </modify-argument>
-
-            <modify-argument index="2">
-                <remove-argument/>
-                <conversion-rule class="shell">
-                    // nothing needed
-                </conversion-rule>
-                <conversion-rule class="native">
-                    <insert-template name="gui.convert_validationdata_to_pos">
-                        <replace from="%VALIDATIONDATA" to="%1"/>
-                    </insert-template>
-                </conversion-rule>
-            </modify-argument>
-
-            <modify-argument index="return">
-                <conversion-rule class="native">
-                    <insert-template name="gui.cleanup_validationdata_from_java"/>
-                    jint %out = %in;
-                </conversion-rule>
-                <conversion-rule class="shell">
-                    <insert-template name="gui.cleanup_validationdata_to_java">
-                        <replace from="%STRING" to="%1"/>
-                        <replace from="%POS" to="%2"/>
-                    </insert-template>
-                    QValidator::State %out = (QValidator::State) qtjambi_to_enumerator(__jni_env, %in);
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>
--->
-  </object-type>
-  <object-type name="QWhatsThis"/>
-  <object-type name="QWidgetAction">
-    <modify-function signature="createWidget(QWidget*)">
-        <modify-argument index="return">
-            <define-ownership class="shell" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-  
-        <modify-function signature="setDefaultWidget(QWidget*)">
-            <modify-argument index="1">
-                <define-ownership class="java" owner="c++"/>
-            </modify-argument>
-        </modify-function>
-    </object-type>
-  <object-type name="QWidgetItem"/>
-  <object-type name="QWindowsStyle">
-      <modify-function signature="standardPixmap(QStyle::StandardPixmap, const QStyleOption*, const QWidget*)const" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="standardIconImplementation(QStyle::StandardPixmap, const QStyleOption *, const QWidget *)const" virtual-slot="yes"/>
-  </object-type>
-  <object-type name="QWorkspace">
-    <modify-function signature="addWindow(QWidget*,QFlags&lt;Qt::WindowType&gt;)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setActiveWindow(QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-
-  <object-type name="QActionEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::ActionAdded || %1-&gt;type() == QEvent::ActionRemoved || %1-&gt;type() == QEvent::ActionChanged">
-        <extra-includes>
-            <include file-name="qt.core.QObject" location="java"/>
-        </extra-includes>
-  </object-type>
-  <object-type name="QClipboardEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::Clipboard"/>
-  <object-type name="QCloseEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::Close"/>
-  <object-type name="QContextMenuEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::ContextMenu"/>
-  <object-type name="QDragEnterEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::DragEnter"/>
-  <object-type name="QDragLeaveEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::DragLeave"/>
-  <object-type name="QDragMoveEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::DragMove">
-    <modify-function signature="accept()" remove="all"/>
-    <modify-function signature="ignore()" remove="all"/>
-  </object-type>
-  <object-type name="QDropEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::Drop">
-    <modify-function signature="encodedData(const char*)const">
-        <remove/>
-    </modify-function>
-
-    <modify-function signature="format(int)const">
-        <remove/>
-    </modify-function>
-
-    <modify-function signature="provides(const char*)const">
-        <remove/>
-    </modify-function>
-    <modify-field name="fmts" read="false" write="false"/> <!-- obsolete in Qt4 -->
-
-  </object-type>
-  <object-type name="QFileOpenEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::FileOpen"/>
-  <object-type name="QFocusEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::FocusIn || %1-&gt;type() == QEvent::FocusOut">
-        <modify-function signature="reason()const">
-            <remove/>
-        </modify-function>
-  </object-type>
-
-  <object-type name="QGraphicsSceneContextMenuEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::GraphicsSceneContextMenu"/>
-  <object-type name="QGraphicsSceneDragDropEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::GraphicsSceneDragEnter || %1-&gt;type() == QEvent::GraphicsSceneDragLeave || %1-&gt;type() == QEvent::GraphicsSceneDragMove || %1-&gt;type() == QEvent::GraphicsSceneDrop">
-    <modify-function signature="setMimeData(const QMimeData *)">
-        <remove/>
-    </modify-function>
-    <modify-function signature="setSource(QWidget *)">
-        <remove/>
-    </modify-function>
-  </object-type>
-  <object-type name="QGraphicsSceneEvent">
-    <modify-function signature="setWidget(QWidget *)">
-        <remove/>
-    </modify-function>
-  </object-type>
-  <object-type name="QGraphicsSceneMoveEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::GraphicsSceneMove"/>
-  <object-type name="QGraphicsSceneResizeEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::GraphicsSceneResize"/>
-  <object-type name="QGraphicsSceneHelpEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::GraphicsSceneHelp"/>
-  <object-type name="QGraphicsSceneHoverEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::GraphicsSceneHoverEnter || %1-&gt;type() == QEvent::GraphicsSceneHoverLeave || %1-&gt;type() == QEvent::GraphicsSceneHoverMove"/>
-  <object-type name="QGraphicsSceneMouseEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::GraphicsSceneMouseDoubleClick || %1-&gt;type() == QEvent::GraphicsSceneMouseMove || %1-&gt;type() == QEvent::GraphicsSceneMousePress || %1-&gt;type() == QEvent::GraphicsSceneMouseRelease"/>
-  <object-type name="QGraphicsSceneWheelEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::GraphicsSceneWheel"/>
-  <object-type name="QHelpEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::ToolTip || %1-&gt;type() == QEvent::WhatsThis"/>
-  <object-type name="QHideEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::Hide"/>
-  <object-type name="QHoverEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::HoverEnter || %1-&gt;type() == QEvent::HoverLeave || %1-&gt;type() == QEvent::HoverMove"/>
-  <object-type name="QIconDragEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::IconDrag"/>
-  <object-type name="QInputMethodEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::InputMethod"/>
-  <object-type name="QMoveEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::Move"/>
-  <object-type name="QResizeEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::Resize"/>
-  <object-type name="QShortcutEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::Shortcut">
-        <!-- All these have const overloads that are used instead -->
-        <modify-function signature="isAmbiguous()">
-            <remove/>
-        </modify-function>
-        <modify-function signature="shortcutId()">
-            <remove/>
-        </modify-function>
-        <modify-function signature="key()">
-            <remove/>
-        </modify-function>
-  </object-type>
-  <object-type name="QShowEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::Show"/>
-  <object-type name="QStatusTipEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::StatusTip"/>
-  <object-type name="QTabletEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::TabletMove || %1-&gt;type() == QEvent::TabletPress || %1-&gt;type() == QEvent::TabletRelease"/>
-  <object-type name="QToolBarChangeEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::ToolBarChange"/>
-  <object-type name="QWhatsThisClickedEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::WhatsThisClicked"/>
-  <object-type name="QWheelEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::Wheel"/>
-  <object-type name="QWindowStateChangeEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::WindowStateChange"/>
-  <object-type name="QDragResponseEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::DragResponse"/>
-  <object-type name="QInputEvent">
-    <modify-function signature="modifiers()const" access="non-final"/>
-  </object-type>
-  <object-type name="QKeyEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::KeyPress || %1-&gt;type() == QEvent::KeyRelease">
-	<modify-function signature="createExtendedKeyEvent(QEvent::Type,int,QFlags&lt;Qt::KeyboardModifier&gt;,uint,uint,uint,const QString &amp;,bool,unsigned short)" remove="all"/>
-  </object-type>
-  <object-type name="QMouseEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::MouseButtonDblClick || %1-&gt;type() == QEvent::MouseButtonPress || %1-&gt;type() == QEvent::MouseButtonRelease || %1-&gt;type() == QEvent::MouseMove">
-  	<modify-function signature="createExtendedMouseEvent(QEvent::Type, const QPointF &amp;, const QPoint &amp;, Qt::MouseButton, QFlags&lt;Qt::MouseButton&gt;, QFlags&lt;Qt::KeyboardModifier&gt;)" remove="all"/>
-  </object-type>
-  <object-type name="QPaintEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::Paint"/>
-  <object-type name="QAccessibleEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::AccessibilityDescription || %1-&gt;type() == QEvent::AccessibilityHelp"/>
-
-  <object-type name="QAbstractButton">
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QAbstractButton___" quote-before-line="}// class"/>
-        </inject-code>
-
-    </object-type>
-
-  <object-type name="QStyle">
-      <modify-function signature="standardIconImplementation(QStyle::StandardPixmap, const QStyleOption *, const QWidget *)const" virtual-slot="yes"/>
-      <modify-function signature="layoutSpacingImplementation(QSizePolicy::ControlType, QSizePolicy::ControlType, Qt::Orientation, const QStyleOption *, const QWidget *) const" virtual-slot="yes"/>
-
-      <modify-function signature="drawComplexControl(QStyle::ComplexControl,const QStyleOptionComplex*,QPainter*,const QWidget*)const">
-        <modify-argument index="3" invalidate-after-use="yes"/>
-      </modify-function>
-      <modify-function signature="drawControl(QStyle::ControlElement,const QStyleOption*,QPainter*,const QWidget*)const">
-        <modify-argument index="3" invalidate-after-use="yes"/>
-      </modify-function>
-      <modify-function signature="drawPrimitive(QStyle::PrimitiveElement,const QStyleOption*,QPainter*,const QWidget*)const">
-        <modify-argument index="3" invalidate-after-use="yes"/>
-      </modify-function>
-      <modify-function signature="styleHint(QStyle::StyleHint,const QStyleOption*,const QWidget*,QStyleHintReturn*)const">
-        <modify-argument index="4" invalidate-after-use="yes"/>
-      </modify-function>
-      <modify-function signature="drawItemPixmap(QPainter*,QRect,int,QPixmap)const">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-      </modify-function>
-      <modify-function signature="drawItemText(QPainter*,QRect,int,QPalette,bool,QString,QPalette::ColorRole)const">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-      </modify-function>
-
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QStyle___" quote-before-line="}// class"/>
-        </inject-code>
-		<!--
-        <modify-function signature="drawControl(QStyle::ControlElement, const QStyleOption *, QPainter *, const QWidget *) const">
-            <modify-argument index="2">
-                <replace-type modified-type="qt.gui.QStyleOption"/>
-                <conversion-rule class="shell">
-                    <insert-template name="gui::qstyleoption_from_object"/>
-                </conversion-rule>
-                <conversion-rule class="native">
-                    <insert-template name="gui::qstyleoption_to_object"/>
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>
-
-        <modify-function signature="drawComplexControl(QStyle::ComplexControl, const QStyleOptionComplex *, QPainter *, const QWidget *) const">
-            <modify-argument index="2">
-                <replace-type modified-type="qt.gui.QStyleOptionComplex"/>
-                <conversion-rule class="shell">
-                    <insert-template name="gui::qstyleoptioncomplex_from_object"/>
-                </conversion-rule>
-                <conversion-rule class="native">
-                    <insert-template name="gui::qstyleoption_to_object"/>
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>
-
-        <modify-function signature="drawPrimitive(QStyle::PrimitiveElement, const QStyleOption *, QPainter *, const QWidget *) const">
-            <modify-argument index="2">
-                <replace-type modified-type="qt.gui.QStyleOption"/>
-                <conversion-rule class="shell">
-                    <insert-template name="gui::qstyleoption_from_object"/>
-                </conversion-rule>
-                <conversion-rule class="native">
-                    <insert-template name="gui::qstyleoption_to_object"/>
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>
-
-        <modify-function signature="hitTestComplexControl(QStyle::ComplexControl, const QStyleOptionComplex *, const QPoint &amp;, const QWidget *) const">
-            <modify-argument index="2">
-                <replace-type modified-type="qt.gui.QStyleOptionComplex"/>
-                <conversion-rule class="shell">
-                    <insert-template name="gui::qstyleoptioncomplex_from_object"/>
-                </conversion-rule>
-                <conversion-rule class="native">
-                    <insert-template name="gui::qstyleoption_to_object"/>
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>
-
-        <modify-function signature="pixelMetric(QStyle::PixelMetric, const QStyleOption *, const QWidget *) const">
-            <modify-argument index="2">
-                <replace-type modified-type="qt.gui.QStyleOption"/>
-                <conversion-rule class="shell">
-                    <insert-template name="gui::qstyleoption_from_object"/>
-                </conversion-rule>
-                <conversion-rule class="native">
-                    <insert-template name="gui::qstyleoption_to_object"/>
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>
-
-        <modify-function signature="sizeFromContents(QStyle::ContentsType, const QStyleOption *, const QSize &amp;, const QWidget *) const">
-            <modify-argument index="2">
-                <replace-type modified-type="qt.gui.QStyleOption"/>
-                <conversion-rule class="shell">
-                    <insert-template name="gui::qstyleoption_from_object"/>
-                </conversion-rule>
-                <conversion-rule class="native">
-                    <insert-template name="gui::qstyleoption_to_object"/>
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>
-
-        <modify-function signature="standardIcon(QStyle::StandardPixmap, const QStyleOption *, const QWidget *) const">
-            <modify-argument index="2">
-                <replace-type modified-type="qt.gui.QStyleOption"/>
-                <conversion-rule class="shell">
-                    <insert-template name="gui::qstyleoption_from_object"/>
-                </conversion-rule>
-                <conversion-rule class="native">
-                    <insert-template name="gui::qstyleoption_to_object"/>
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>
-
-        <modify-function signature="standardPixmap(QStyle::StandardPixmap, const QStyleOption *, const QWidget *) const">
-            <modify-argument index="2">
-                <replace-type modified-type="qt.gui.QStyleOption"/>
-                <conversion-rule class="shell">
-                    <insert-template name="gui::qstyleoption_from_object"/>
-                </conversion-rule>
-                <conversion-rule class="native">
-                    <insert-template name="gui::qstyleoption_to_object"/>
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>
-
-        <modify-function signature="styleHint(QStyle::StyleHint, const QStyleOption *, const QWidget *, QStyleHintReturn *) const">
-            <modify-argument index="2">
-                <replace-type modified-type="qt.gui.QStyleOption"/>
-                <conversion-rule class="shell">
-                    <insert-template name="gui::qstyleoption_from_object"/>
-                </conversion-rule>
-                <conversion-rule class="native">
-                    <insert-template name="gui::qstyleoption_to_object"/>
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>
-
-        <modify-function signature="subControlRect(QStyle::ComplexControl, const QStyleOptionComplex *, QStyle::SubControl, const QWidget *) const">
-            <modify-argument index="2">
-                <replace-type modified-type="qt.gui.QStyleOptionComplex"/>
-                <conversion-rule class="shell">
-                    <insert-template name="gui::qstyleoptioncomplex_from_object"/>
-                </conversion-rule>
-                <conversion-rule class="native">
-                    QStyleOptionComplex *%out = (QStyleOptionComplex *) qtjambi_to_object(__jni_env, %in);
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>
-
-        <modify-function signature="subElementRect(QStyle::SubElement, const QStyleOption *, const QWidget *) const">
-            <modify-argument index="2">
-                <replace-type modified-type="qt.gui.QStyleOption"/>
-                <conversion-rule class="shell">
-                    <insert-template name="gui::qstyleoption_from_object"/>
-                </conversion-rule>
-                <conversion-rule class="native">
-                    <insert-template name="gui::qstyleoption_to_object"/>
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>
-
-        <modify-function signature="generatedIconPixmap(QIcon::Mode,QPixmap,const QStyleOption*)const">
-            <modify-argument index="3">
-                <replace-type modified-type="qt.gui.QStyleOption"/>
-                <conversion-rule class="shell">
-                    <insert-template name="gui::qstyleoption_from_object"/>
-                </conversion-rule>
-                <conversion-rule class="native">
-                    <insert-template name="gui::qstyleoption_to_object"/>
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>
-
-        <modify-function signature="polish(QPalette&amp;)">
-            <modify-argument index="1">
-                <replace-type modified-type="qt.gui.QPalette"/>
-                <conversion-rule class="shell">
-                    jobject %out = qtjambi_from_object(__jni_env, &amp;%in, "QPalette", "com/trolltech/qt/gui/", false);
-                    jobject __invalidate_me = %out;
-                </conversion-rule>
-                <conversion-rule class="native">
-                    QtJambiLink *link = QtJambiLink::findLink(__jni_env, %in);
-                    Q_ASSERT(link != 0);
-
-                    QPalette dummy;
-                    QPalette &amp;%out = link != 0 ? * (QPalette *) link-&gt;pointer() : dummy;
-                </conversion-rule>
-            </modify-argument>
-            <modify-argument index="0">
-                <conversion-rule class="shell">
-                    if (__invalidate_me != 0)
-                    qtjambi_invalidate_object(__jni_env, __invalidate_me);
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>
-
-        <modify-function signature="standardIconImplementation(QStyle::StandardPixmap,const QStyleOption*,const QWidget*)const">
-            <modify-argument index="2">
-                <replace-type modified-type="qt.gui.QStyleOption"/>
-                <conversion-rule class="shell">
-                    <insert-template name="gui::qstyleoption_from_object"/>
-                </conversion-rule>
-                <conversion-rule class="native">
-                    <insert-template name="gui::qstyleoption_to_object"/>
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>
--->
-        <modify-function signature="combinedLayoutSpacing(QFlags&lt;QSizePolicy::ControlType&gt;,QFlags&lt;QSizePolicy::ControlType&gt;,Qt::Orientation,QStyleOption*,QWidget*)const">
-            <access modifier="private"/>
-            <modify-argument index="4">
-                <remove-default-expression/>
-            </modify-argument>
-            <modify-argument index="5">
-                <remove-default-expression/>
-            </modify-argument>
-        </modify-function>
-
-
-        <modify-function signature="layoutSpacing(QSizePolicy::ControlType,QSizePolicy::ControlType,Qt::Orientation,const QStyleOption*,const QWidget*)const">
-            <access modifier="private"/>
-            <modify-argument index="4">
-                <remove-default-expression/>
-            </modify-argument>
-            <modify-argument index="5">
-                <remove-default-expression/>
-            </modify-argument>
-        </modify-function>
-
-<!--
-        <modify-function signature="layoutSpacingImplementation(QSizePolicy::ControlType,QSizePolicy::ControlType,Qt::Orientation,const QStyleOption*,const QWidget*)const">
-            <modify-argument index="4">
-                <replace-type modified-type="qt.gui.QStyleOption"/>
-                <conversion-rule class="shell">
-                    <insert-template name="gui::qstyleoption_from_object"/>
-                </conversion-rule>
-                <conversion-rule class="native">
-                    <insert-template name="gui::qstyleoption_to_object"/>
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>
--->
-
-
-        <inject-code class="shell-declaration"> <!-- Remove in Qt 5 -->
-            QPixmap standardPixmap(QStyle::StandardPixmap, const QStyleOption*, const QWidget*) const { return QPixmap(); }
-        </inject-code>
-
-        <modify-function signature="standardPixmap(QStyle::StandardPixmap, const QStyleOption*, const QWidget*)const" remove="all"/> <!--### Obsolete in 4.3-->
-    </object-type>
-
-  <object-type name="QColorDialog">
-    <modify-function signature="open(QObject *, const char *)" remove="all"/> <!-- # TODO -->
-
-    <modify-function signature="getColor(const QColor &amp;, QWidget *)">
-      <modify-argument index="1">
-        <replace-default-expression with="QColor.White"/>
-      </modify-argument>
-    </modify-function>
-    <modify-function signature="getRgba(uint,bool*,QWidget*)">
-        <remove/>
-    </modify-function>
-  </object-type>
-
-  <object-type name="QLayout">
-  
-    <modify-function signature="addItem(QLayoutItem*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-
-    <modify-function signature="setSpacing(int)" rename="setWidgetSpacing"/>
-    <modify-function signature="spacing()const" rename="widgetSpacing"/>
-    <modify-function signature="addWidget(QWidget *)">
-        <modify-argument index="1">
-            <no-null-pointer/>
-            <reference-count variable-name="__rcWidgets" action="add"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="addChildWidget(QWidget *)">
-        <modify-argument index="1">
-            <no-null-pointer/>
-            <reference-count variable-name="__rcWidgets" action="add"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="removeWidget(QWidget *)">
-        <modify-argument index="1">
-            <no-null-pointer/>
-            <reference-count variable-name="__rcWidgets" action="remove"/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="setAlignment(QWidget*,QFlags&lt;Qt::AlignmentFlag&gt;)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setAlignment(QLayout*,QFlags&lt;Qt::AlignmentFlag&gt;)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setMenuBar(QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcMenuBar"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="getContentsMargins(int*,int*,int*,int*)const">
-        <access modifier="private"/>
-    </modify-function>
-
-    <modify-function signature="margin()const" remove="all"/> <!--### Obsolete in 4.3-->
-    <!-- <modify-function signature="setMargin(int)" remove="all"/> --> <!--### Obsolete in 4.3-->
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QLayout___" quote-before-line="}// class"/>
-        </inject-code>
-        <modify-function signature="addItem(QLayoutItem *)">
-            <modify-argument index="1">
-                <define-ownership class="java" owner="c++"/>
-            </modify-argument>
-        </modify-function>
-        <modify-function signature="removeItem(QLayoutItem *)">
-            <modify-argument index="1">
-                <define-ownership class="java" owner="default"/>
-            </modify-argument>
-        </modify-function>
-        <modify-function signature="addChildLayout(QLayout *)">
-            <modify-argument index="1">
-                <define-ownership class="java" owner="c++"/>
-            </modify-argument>
-        </modify-function>
-        <modify-function signature="addChildLayout(QLayout *)">
-            <modify-argument index="1">
-                <define-ownership class="java" owner="c++"/>
-            </modify-argument>
-        </modify-function>
-        <modify-function signature="itemAt(int) const">
-<!--            <modify-argument index="return">
-                <define-ownership class="java" owner="c++"/>
-            </modify-argument>-->
-        </modify-function>
-
-
-    </object-type>
-
-  <object-type name="QStackedLayout">
-    <modify-function signature="addItem(QLayoutItem *)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="itemAt(int) const">
-        <modify-argument index="return">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="addWidget(QWidget *)">
-        <rename to="addStackedWidget"/>
-        <modify-argument index="1">
-            <no-null-pointer/>
-            <reference-count action="add" declare-variable="QLayout" variable-name="__rcWidgets"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertWidget(int,QWidget*)">
-        <modify-argument index="2">
-            <no-null-pointer/>
-            <reference-count action="add" declare-variable="QLayout" variable-name="__rcWidgets"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setCurrentWidget(QWidget*)">
-        <modify-argument index="1">
-            <!-- Safe to ignore because current widget must have been added to layout already -->
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-
-  <object-type name="QBoxLayout">
-    <modify-function signature="addWidget(QWidget *, int, QFlags&lt;Qt::AlignmentFlag&gt;)">
-        <modify-argument index="1">
-            <no-null-pointer/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="addItem(QLayoutItem *)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertLayout(int, QLayout *, int)">
-        <modify-argument index="2">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertItem(int, QLayoutItem *)">
-        <modify-argument index="2">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="addSpacerItem(QSpacerItem*)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertSpacerItem(int,QSpacerItem*)">
-        <modify-argument index="2">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="addLayout(QLayout *, int)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="addWidget(QWidget*,int,QFlags&lt;Qt::AlignmentFlag&gt;)">
-        <modify-argument index="1">
-            <reference-count declare-variable="QLayout" action="add" variable-name="__rcWidgets"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertWidget(int,QWidget*,int,QFlags&lt;Qt::AlignmentFlag&gt;)">
-        <modify-argument index="2">
-            <reference-count declare-variable="QLayout" action="add" variable-name="__rcWidgets"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setStretchFactor(QWidget*,int)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setStretchFactor(QLayout*,int)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-
-  <object-type name="QGridLayout">
-    <modify-function signature="addWidget(QWidget *)" remove="all"/>
-    <modify-function signature="addItem(QLayoutItem *)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="addItem(QLayoutItem *, int, int, int, int, QFlags&lt;Qt::AlignmentFlag&gt;)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="addLayout(QLayout *, int, int, QFlags&lt;Qt::AlignmentFlag&gt;)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="addLayout(QLayout *, int, int, int, int, QFlags&lt;Qt::AlignmentFlag&gt;)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-        <modify-function signature="addWidget(QWidget*,int,int,QFlags&lt;Qt::AlignmentFlag&gt;)">
-            <modify-argument index="1">
-                <reference-count declare-variable="QLayout" action="add" variable-name="__rcWidgets"/>
-            </modify-argument>
-        </modify-function>
-        <modify-function signature="addWidget(QWidget*,int,int,int,int,QFlags&lt;Qt::AlignmentFlag&gt;)">
-            <modify-argument index="1">
-                <reference-count declare-variable="QLayout" action="add" variable-name="__rcWidgets"/>
-            </modify-argument>
-        </modify-function>
-        <modify-function signature="addWidget(QWidget*)">
-            <modify-argument index="1">
-                <reference-count declare-variable="QLayout" action="add" variable-name="__rcWidgets"/>
-            </modify-argument>
-        </modify-function>
-    <modify-function signature="getItemPosition(int,int*,int*,int*,int*)">
-        <access modifier="private"/>
-    </modify-function>
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QGridLayout___" quote-before-line="}// class"/>
-        </inject-code>
-
-
-    </object-type>
-
-  <object-type name="QGraphicsView">
-    <extra-includes>
-      <include file-name="QPainterPath" location="global"/>
-      <include file-name="QVarLengthArray" location="global"/>
-    </extra-includes>
-    <modify-function signature="fitInView(const QGraphicsItem *, Qt::AspectRatioMode)">
-        <modify-argument index="1">
-            <no-null-pointer/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setupViewport(QWidget *)" access="non-final"/>
-    <modify-function signature="setScene(QGraphicsScene*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcScene"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setupViewport(QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="drawBackground(QPainter*,QRectF)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="drawForeground(QPainter*,QRectF)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="drawItems(QPainter*,int,QGraphicsItem**,const QStyleOptionGraphicsItem*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-
-    <modify-function signature="drawItems(QPainter*,int,QGraphicsItem**,const QStyleOptionGraphicsItem*)" remove="all" />
-
-<!--
-    <modify-function signature="drawItems(QPainter*,int,QGraphicsItem**,const QStyleOptionGraphicsItem*)">
-        <modify-argument index="2">
-            <remove-argument/>
-            <conversion-rule class="shell">
-                // nothing
-            </conversion-rule>
-            <conversion-rule class="native">
-                <insert-template name="core.get_array_length">
-                    <replace from="%ARRAY" to="%3"/>
-                </insert-template>
-                int __length = %out;
-            </conversion-rule>
-        </modify-argument>
-
-        <modify-argument index="3">
-            <replace-type modified-type="qt.gui.QGraphicsItemInterface[]"/>
-            <conversion-rule class="shell">
-                <insert-template name="gui.convert_graphicsitem_array_to_java">
-                    <replace from="%LENGTH" to="%2"/>
-                </insert-template>
-                jobjectArray graphicsItemArrayHolder = %out;
-            </conversion-rule>
-            <conversion-rule class="native">
-                <insert-template name="gui.convert_graphicsitem_array_from_java"/>
-            </conversion-rule>
-        </modify-argument>
-
-        <modify-argument index="4">
-            <replace-type modified-type="qt.gui.QStyleOptionGraphicsItem[]"/>
-            <conversion-rule class="shell">
-                <insert-template name="gui.convert_styleoptiongraphicsitem_array_to_java">
-                    <replace from="%LENGTH" to="%2"/>
-                </insert-template>
-                jobjectArray styleOptionArrayHolder = %out;
-            </conversion-rule>
-            <conversion-rule class="native">
-                <insert-template name="gui.convert_styleoptiongraphicsitem_array_from_java"/>
-            </conversion-rule>
-        </modify-argument>
-
-        <modify-argument index="return">
-            <conversion-rule class="shell">
-                qtjambi_invalidate_array(__jni_env, styleOptionArrayHolder);
-                qtjambi_invalidate_array(__jni_env, graphicsItemArrayHolder);
-            </conversion-rule>
-        </modify-argument>
-
-    </modify-function>
-    -->
-  </object-type>
-
-  <object-type name="QInputDialog">
-    <modify-function signature="open(QObject *, const char *)" remove="all"/> <!-- # TODO -->
-<!--
-    <modify-function signature="getDouble(QWidget *, const QString &amp;, const QString &amp;, double, double, double, int, bool *, QFlags&lt;Qt::WindowType&gt;)">
-        <rename to="getDouble_private"/>
-        <access modifier="private"/>
-    </modify-function>
-
-    <modify-function signature="getInteger(QWidget *, const QString &amp;, const QString &amp;, int, int, int, int, bool *, QFlags&lt;Qt::WindowType&gt;)">
-        <remove/>
-    </modify-function>
-
-    <modify-function signature="getInt(QWidget*,QString,QString,int,int,int,int,bool*,QFlags&lt;Qt::WindowType&gt;)">
-        <rename to="getInt_private" />
-        <access modifier="private" />
-    </modify-function>
-
-    <modify-function signature="getItem(QWidget *, const QString &amp;, const QString &amp;, const QStringList&lt;QString&gt; &amp;, int, bool, bool *, QFlags&lt;Qt::WindowType&gt;)">
-        <rename to="getItem_private"/>
-        <access modifier="private"/>
-    </modify-function>
-
-    <modify-function signature="getText(QWidget *, const QString &amp;, const QString &amp;, QLineEdit::EchoMode, const QString &amp;, bool *, QFlags&lt;Qt::WindowType&gt;)">
-        <rename to="getText_private"/>
-        <access modifier="private"/>
-    </modify-function>
-    <inject-code>
-        <import-file name="typesystem_gui-java.java" quote-after-line="class QInputDialog___" quote-before-line="}// class"/>
-    </inject-code>
--->
-    </object-type>
-
-
-  <object-type name="QGraphicsScene">
-    <extra-includes>
-        <include file-name="QVarLengthArray" location="global"/>
-    </extra-includes>
-    <modify-function signature="drawItems(QPainter*,int,QGraphicsItem**,const QStyleOptionGraphicsItem*,QWidget*)" remove="all"/> <!-- TODO: What is '_ConcreteWrapper'? -->
-    <!--
-    <modify-function signature="contextMenuEvent(QGraphicsSceneContextMenuEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="dragEnterEvent(QGraphicsSceneDragDropEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="dragLeaveEvent(QGraphicsSceneDragDropEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="dragMoveEvent(QGraphicsSceneDragDropEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="drawBackground(QPainter*,QRectF)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="drawForeground(QPainter*,QRectF)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="drawItems(QPainter*,int,QGraphicsItem**,const QStyleOptionGraphicsItem*,QWidget*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="dropEvent(QGraphicsSceneDragDropEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="focusInEvent(QFocusEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="focusOutEvent(QFocusEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="helpEvent(QGraphicsSceneHelpEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="inputMethodEvent(QInputMethodEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="keyPressEvent(QKeyEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="keyReleaseEvent(QKeyEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="mouseDoubleClickEvent(QGraphicsSceneMouseEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="mouseMoveEvent(QGraphicsSceneMouseEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="mousePressEvent(QGraphicsSceneMouseEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="mouseReleaseEvent(QGraphicsSceneMouseEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="wheelEvent(QGraphicsSceneWheelEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-
-    <modify-function signature="setActiveWindow(QGraphicsWidget*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setStyle(QStyle*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="addItem(QGraphicsItem *)">
-      <modify-argument index="1">
-        <define-ownership class="java" owner="c++"/>
-      </modify-argument>
-    </modify-function>
-    <modify-function signature="addEllipse(const QRectF &amp;, const QPen &amp;, const QBrush &amp;)">
-      <modify-argument index="return">
-        <define-ownership class="java" owner="c++"/>
-      </modify-argument>
-    </modify-function>
-    <modify-function signature="addLine(const QLineF &amp;, const QPen &amp;)">
-      <modify-argument index="return">
-        <define-ownership class="java" owner="c++"/>
-      </modify-argument>
-    </modify-function>
-    <modify-function signature="addPath(const QPainterPath &amp;, const QPen &amp;, const QBrush &amp;)">
-      <modify-argument index="return">
-        <define-ownership class="java" owner="c++"/>
-      </modify-argument>
-    </modify-function>
-    <modify-function signature="addPixmap(const QPixmap &amp;)">
-        <modify-argument index="return">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="addPolygon(const QPolygonF &amp;, const QPen &amp;, const QBrush &amp;)">
-        <modify-argument index="return">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="addRect(const QRectF &amp;, const QPen &amp;, const QBrush &amp;)">
-        <modify-argument index="return">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="addText(const QString &amp;, const QFont &amp;)">
-        <modify-argument index="return">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="addWidget(QWidget*,QFlags&lt;Qt::WindowType&gt;)">
-        <modify-argument index="return">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="removeItem(QGraphicsItem*)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="default"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setFocusItem(QGraphicsItem*,Qt::FocusReason)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcFocusItem"/>
-        </modify-argument>
-    </modify-function>
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QGraphicsScene___" quote-before-line="}// class"/>
-        </inject-code>
-
-        <modify-function signature="addEllipse(const QRectF &amp;, const QPen &amp;, const QBrush &amp;)" remove="all"/>
-        <modify-function signature="addEllipse(double, double, double, double, const QPen &amp;, const QBrush &amp;)" remove="all"/>
-        <modify-function signature="addLine(const QLineF &amp;, const QPen &amp;)" remove="all"/>
-        <modify-function signature="addLine(double, double, double, double, const QPen &amp;)" remove="all"/>
-        <modify-function signature="addPath(const QPainterPath &amp;, const QPen &amp;, const QBrush &amp;)" remove="all"/>
-        <modify-function signature="addPixmap(const QPixmap &amp;)" remove="all"/>
-        <modify-function signature="addPolygon(const QPolygonF &amp;, const QPen &amp;, const QBrush &amp;)" remove="all"/>
-        <modify-function signature="addRect(const QRectF &amp;, const QPen &amp;, const QBrush &amp;)" remove="all"/>
-        <modify-function signature="addRect(double, double, double, double, const QPen &amp;, const QBrush &amp;)" remove="all"/>
-        <modify-function signature="addSimpleText(const QString &amp;, const QFont &amp;)" remove="all"/>
-        <modify-function signature="addText(const QString &amp;, const QFont &amp;)" remove="all"/>
-
-        <modify-function signature="drawItems(QPainter*,int,QGraphicsItem**,const QStyleOptionGraphicsItem*,QWidget*)">
-            <modify-argument index="2">
-                <remove-argument/>
-                <conversion-rule class="shell">
-                    // nothing
-                </conversion-rule>
-                <conversion-rule class="native">
-                    <insert-template name="core.get_array_length">
-                        <replace from="%ARRAY" to="%3"/>
-                    </insert-template>
-                    int __length = %out;
-                </conversion-rule>
-
-            </modify-argument>
-
-            <modify-argument index="3">
-                <replace-type modified-type="qt.gui.QGraphicsItemInterface[]"/>
-                <conversion-rule class="shell">
-                    <insert-template name="gui.convert_graphicsitem_array_to_java">
-                        <replace from="%LENGTH" to="%2"/>
-                    </insert-template>
-                    jobjectArray graphicsItemArrayHolder = %out;
-                </conversion-rule>
-                <conversion-rule class="native">
-                    <insert-template name="gui.convert_graphicsitem_array_from_java"/>
-                </conversion-rule>
-            </modify-argument>
-
-            <modify-argument index="return">
-                <conversion-rule class="shell">
-                    qtjambi_invalidate_array(__jni_env, styleOptionArrayHolder);
-                    qtjambi_invalidate_array(__jni_env, graphicsItemArrayHolder);
-                </conversion-rule>
-            </modify-argument>
-
-            <modify-argument index="4">
-                <replace-type modified-type="qt.gui.QStyleOptionGraphicsItem[]"/>
-                <conversion-rule class="shell">
-                    <insert-template name="gui.convert_styleoptiongraphicsitem_array_to_java">
-                        <replace from="%LENGTH" to="%2"/>
-                    </insert-template>
-                    jobjectArray styleOptionArrayHolder = %out;
-                </conversion-rule>
-                <conversion-rule class="native">
-                    <insert-template name="gui.convert_styleoptiongraphicsitem_array_from_java"/>
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>
-	-->
-    </object-type>
-
-
-  <object-type name="QCalendarWidget">
-    <extra-includes>
-      <include file-name="QTextCharFormat" location="global"/>
-    </extra-includes>
-
-      <modify-function signature="isHeaderVisible()const" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="setHeaderVisible(bool)" remove="all"/> <!--### Obsolete in 4.3-->
-
-      <modify-function signature="paintCell(QPainter*,QRect,QDate)const">
-        <modify-argument invalidate-after-use="yes" index="1"/>
-      </modify-function>
-  </object-type>
-
-  <object-type name="QTreeWidget">
-    <modify-function signature="mimeData(const QList&lt;QTreeWidgetItem*&gt;)const">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="dropMimeData(QTreeWidgetItem*,int,const QMimeData*,Qt::DropAction)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="isSortingEnabled()const" remove="all"/>
-    <modify-function signature="setSortingEnabled(bool)" remove="all"/>
-    <modify-function signature="indexOfTopLevelItem(QTreeWidgetItem *)">
-        <remove/>
-    </modify-function>
-    <modify-function signature="addTopLevelItem(QTreeWidgetItem *)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="takeTopLevelItem(int)">
-        <modify-argument index="return">
-            <define-ownership class="java" owner="default"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="addTopLevelItems(const QList&lt;QTreeWidgetItem*&gt; &amp;)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertTopLevelItem(int, QTreeWidgetItem *)">
-        <modify-argument index="2">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertTopLevelItems(int, const QList&lt;QTreeWidgetItem*&gt; &amp;)">
-        <modify-argument index="2">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setHeaderItem(QTreeWidgetItem *)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="takeTopLevelItem(int)">
-        <modify-argument index="return">
-            <define-ownership class="java" owner="default"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="removeItemWidget(QTreeWidgetItem*,int)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="default"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setCurrentItem(QTreeWidgetItem*,int,QFlags&lt;QItemSelectionModel::SelectionFlag&gt;)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setFirstItemColumnSpanned(const QTreeWidgetItem*,bool)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setCurrentItem(QTreeWidgetItem*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setCurrentItem(QTreeWidgetItem*,int)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setItemExpanded(const QTreeWidgetItem*,bool)">
-        <remove/>
-    </modify-function>
-    <modify-function signature="isItemExpanded(const QTreeWidgetItem*)const">
-        <remove/>
-    </modify-function>
-    <modify-function signature="setItemHidden(const QTreeWidgetItem*,bool)">
-        <remove/>
-    </modify-function>
-    <modify-function signature="isItemHidden(const QTreeWidgetItem*)const">
-        <remove/>
-    </modify-function>
-    <modify-function signature="isItemSelected(const QTreeWidgetItem*)const">
-        <remove/>
-    </modify-function>
-    <modify-function signature="setItemSelected(const QTreeWidgetItem*,bool)">
-        <remove/>
-    </modify-function>
-    <modify-function signature="setItemWidget(QTreeWidgetItem*,int,QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-        <modify-argument index="3">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setModel(QAbstractItemModel*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-
-      <modify-function signature="items(const QMimeData*)const" remove="all"/> <!--### Obsolete in 4.3-->
-  </object-type>
-
-  <object-type name="QAbstractItemDelegate">
-    <modify-function signature="setEditorData(QWidget*,QModelIndex)const">
-        <modify-argument index="1">
-            <!-- Safe to ignore because this implementation is documented to do nothing -->
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setModelData(QWidget*,QAbstractItemModel*,QModelIndex)const">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-        <modify-argument index="2">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="paint(QPainter*,QStyleOptionViewItem,QModelIndex)const">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="editorEvent(QEvent*,QAbstractItemModel*,QStyleOptionViewItem,QModelIndex)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-
-      <modify-function signature="elidedText(QFontMetrics, int, Qt::TextElideMode, QString)" remove="all"/> <!--### Obsolete in 4.3-->
-  </object-type>
-
-  <object-type name="QTableWidgetItem" delete-in-main-thread="yes">
-    <modify-function signature="operator=(const QTableWidgetItem&amp;)" remove="all"/>
-    <modify-function signature="clone() const">
-        <modify-argument index="return">
-            <define-ownership class="shell" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-
-      <modify-function signature="backgroundColor()const" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="setBackgroundColor(QColor)" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="setTextColor(QColor)" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="textColor()const" remove="all"/> <!--### Obsolete in 4.3-->
-
-    <modify-function signature="operator&lt;(QTableWidgetItem)const">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="read(QDataStream&amp;)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="write(QDataStream&amp;)const">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-
-  </object-type>
-
-  <object-type name="QListWidgetItem" delete-in-main-thread="yes">
-
-    <modify-function signature="operator&lt;(QListWidgetItem)const">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="read(QDataStream&amp;)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="write(QDataStream&amp;)const">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-
-
-    <modify-function signature="operator=(const QListWidgetItem&amp;)" remove="all"/>
-<!--    <modify-function signature="QListWidgetItem(QListWidget *, int)">
-        <modify-argument index="this">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="QListWidgetItem(const QString &amp;, QListWidget *, int)">
-        <modify-argument index="this">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="QListWidgetItem(const QIcon &amp;, const QString &amp;, QListWidget *, int)">
-        <modify-argument index="this">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="clone() const">
-        <modify-argument index="return">
-            <define-ownership class="shell" owner="c++"/>
-        </modify-argument>
-    </modify-function>
--->
-      <modify-function signature="backgroundColor()const" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="setBackgroundColor(QColor)" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="setTextColor(QColor)" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="textColor()const" remove="all"/> <!--### Obsolete in 4.3-->
-  </object-type>
-
-  <object-type name="QGraphicsTextItem"> <!-- a QObject so main-thread delete redundant -->
-    <extra-includes>
-      <include file-name="QTextCursor" location="global"/>
-    </extra-includes>
-    	<modify-function signature="setExtension(QGraphicsItem::Extension,QVariant)" remove="all"/>
-	<modify-function signature="supportsExtension(QGraphicsItem::Extension)const" remove="all"/>
-    <!--
-    <modify-function signature="QGraphicsTextItem(QGraphicsItem*,QGraphicsScene*)">
-        <inject-code position="end">
-            <argument-map index="1" meta-name="%1"/>
-            if (%1 != null) disableGarbageCollection();
-        </inject-code>
-    </modify-function>
-    <modify-function signature="QGraphicsTextItem(const QString &amp;,QGraphicsItem*,QGraphicsScene*)">
-        <inject-code position="end">
-            <argument-map index="2" meta-name="%2"/>
-            if (%2 != null) disableGarbageCollection();
-        </inject-code>
-    </modify-function>
-    <modify-function signature="setDocument(QTextDocument*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcDocument"/>
-        </modify-argument>
-    </modify-function>
-    -->
-      <modify-function signature="matrix()const" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="resetMatrix()" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="sceneMatrix()const" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="setMatrix(QMatrix, bool)" remove="all"/> <!--### Obsolete in 4.3-->
-  </object-type>
-
-  <object-type name="QCompleter">
-    <modify-function signature="activated(const QModelIndex &amp;)">
-        <rename to="activatedIndex"/>
-    </modify-function>
-    <modify-function signature="highlighted(const QModelIndex &amp;)">
-        <rename to="highlightedIndex"/>
-    </modify-function>
-    <modify-function signature="setModel(QAbstractItemModel *)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcModel"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setPopup(QAbstractItemView *)">
-        <modify-argument index="1">
-            <no-null-pointer/>
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setWidget(QWidget *)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcWidget"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-
-
-  <object-type name="QTreeWidgetItem" delete-in-main-thread="yes">
-
-    <modify-function signature="operator&lt;(QTreeWidgetItem)const">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="read(QDataStream&amp;)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="write(QDataStream&amp;)const">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-
-    <modify-function signature="QTreeWidgetItem(const QTreeWidgetItem &amp;)" remove="all"/>
-    <modify-function signature="operator=(const QTreeWidgetItem&amp;)" remove="all"/>
-
-    <modify-function signature="QTreeWidgetItem(QTreeWidget *,int)">
-        <modify-argument index="this">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="QTreeWidgetItem(QTreeWidget *,const QStringList&lt;QString&gt; &amp;,int)">
-        <modify-argument index="this">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="QTreeWidgetItem(QTreeWidget *,QTreeWidgetItem *,int)">
-        <modify-argument index="this">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="QTreeWidgetItem(QTreeWidgetItem *,int)">
-        <modify-argument index="this">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="QTreeWidgetItem(QTreeWidgetItem *,const QStringList&lt;QString&gt; &amp;,int)">
-        <modify-argument index="this">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="QTreeWidgetItem(QTreeWidgetItem *,QTreeWidgetItem *,int)">
-        <modify-argument index="this">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="clone() const">
-        <modify-argument index="return">
-            <define-ownership class="shell" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="addChild(QTreeWidgetItem *)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="addChildren(const QList&lt;QTreeWidgetItem*&gt; &amp;)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertChild(int, QTreeWidgetItem *)">
-        <modify-argument index="2">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertChildren(int, const QList&lt;QTreeWidgetItem*&gt; &amp;)">
-        <modify-argument index="2">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="removeChild(QTreeWidgetItem*)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="default"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="takeChild(int)">
-        <modify-argument index="return">
-            <define-ownership class="java" owner="default"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="takeChildren()">
-        <modify-argument index="return">
-            <define-ownership class="java" owner="default"/>
-        </modify-argument>
-    </modify-function>
-
-      <modify-function signature="backgroundColor(int)const" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="setBackgroundColor(int, QColor)" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="setTextColor(int, QColor)" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="textColor(int)const" remove="all"/> <!--### Obsolete in 4.3-->
-  </object-type>
-
-  <object-type name="QListWidget">
-    <modify-function signature="mimeData(const QList&lt;QListWidgetItem *&gt;)const">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="addItem(QListWidgetItem *)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertItem(int, QListWidgetItem *)">
-        <modify-argument index="2">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="removeItemWidget(QListWidgetItem*)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="default"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setCurrentItem(QListWidgetItem*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setCurrentItem(QListWidgetItem*,QFlags&lt;QItemSelectionModel::SelectionFlag&gt;)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setItemHidden(const QListWidgetItem*,bool)">
-        <remove/>
-    </modify-function>
-    <modify-function signature="isItemHidden(const QListWidgetItem*)const">
-        <remove/>
-    </modify-function>
-    <modify-function signature="setItemSelected(const QListWidgetItem*,bool)">
-        <remove/>
-    </modify-function>
-    <modify-function signature="isItemSelected(const QListWidgetItem*)const">
-        <remove/>
-    </modify-function>
-    <modify-function signature="takeItem(int)">
-        <modify-argument index="return">
-            <define-ownership class="java" owner="default"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setItemWidget(QListWidgetItem*,QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-        <modify-argument index="2">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setModel(QAbstractItemModel*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-
-  
-<!--        <modify-function signature="addItem(const QString &amp;)" remove="all"/>-->
-        <modify-function signature="addItems(const QStringList&lt;QString&gt; &amp;)" remove="all"/>
-        <modify-function signature="insertItem(int, const QString &amp;)" remove="all"/>
-        <modify-function signature="insertItems(int, const QStringList&lt;QString&gt; &amp;)" remove="all"/>
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QListWidget___" quote-before-line="}// class"/>
-        </inject-code>
-    </object-type>
-
-  <object-type name="QWidget">
-    <extra-includes>
-        <include file-name="QIcon" location="global"/>
-        <include file-name="QMessageBox" location="global"/>
-    </extra-includes>
-
-<!-- These should be restored later after fixing abstract classes issue -->
-<!--<modify-function signature="inputContext()" remove="all"/>
-<modify-function signature="layout() const" remove="all"/>
-<modify-function signature="setLayout(QLayout*)" remove="all"/>-->
-<modify-function signature="style () const" remove="all"/>
-<!--                                                                    -->
-
-    <modify-function signature="actionEvent(QActionEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="changeEvent(QEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="closeEvent(QCloseEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="contextMenuEvent(QContextMenuEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="dragEnterEvent(QDragEnterEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="dragLeaveEvent(QDragLeaveEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="dragMoveEvent(QDragMoveEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="dropEvent(QDropEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="enterEvent(QEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="focusInEvent(QFocusEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="focusOutEvent(QFocusEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="hideEvent(QHideEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="inputMethodEvent(QInputMethodEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="keyPressEvent(QKeyEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="keyReleaseEvent(QKeyEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="leaveEvent(QEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="mouseDoubleClickEvent(QMouseEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="mouseMoveEvent(QMouseEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="mousePressEvent(QMouseEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="mouseReleaseEvent(QMouseEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="moveEvent(QMoveEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="paintEvent(QPaintEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="resizeEvent(QResizeEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="showEvent(QShowEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="tabletEvent(QTabletEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="wheelEvent(QWheelEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-<!-- qtd
-    <modify-function signature="render(QPainter*,QPoint,QRegion,QFlags&lt;QWidget::RenderFlag&gt;)">
-        <modify-argument index="2">
-            <remove-default-expression/>
-        </modify-argument>
-    </modify-function>
-
-    <inject-code class="native">
-        extern "C" JNIEXPORT void JNICALL QTJAMBI_FUNCTION_PREFIX(Java_com_trolltech_qt_gui_QWidget__1_1qt_1QMessageBox_1setWindowTitle)
-        (JNIEnv *__jni_env,
-            jclass,
-            jlong __this_nativeId,
-            jobject title0)
-        {
-            QTJAMBI_DEBUG_TRACE("(native) entering: QMessageBox::setWindowTitle(const QString &amp; title)");
-            QString __qt_title0 =  qtjambi_to_qstring(__jni_env, (jstring) title0);
-            QTJAMBI_EXCEPTION_CHECK(__jni_env);
-            QMessageBox *__qt_this = (QMessageBox *) qtjambi_from_jlong(__this_nativeId);
-            QTJAMBI_EXCEPTION_CHECK(__jni_env);
-            Q_ASSERT(__qt_this);
-            __qt_this-&gt;setWindowTitle((const QString&amp; )__qt_title0);
-            QTJAMBI_DEBUG_TRACE("(native) -&gt; leaving: QMessageBox::setWindowTitle(const QString &amp; title)");
-        }
-    </inject-code>
-
-    <inject-code class="native">
-        extern "C" JNIEXPORT void JNICALL QTJAMBI_FUNCTION_PREFIX(Java_com_trolltech_qt_gui_QWidget__1_1qt_1QMessageBox_1setWindowModality)
-        (JNIEnv *__jni_env,
-            jclass,
-            jlong __this_nativeId,
-            jint windowModality0)
-        {
-            Q_UNUSED(__jni_env);
-            QTJAMBI_DEBUG_TRACE("(native) entering: QMessageBox::setWindowModality(Qt::WindowModality modality)");
-            Qt::WindowModality __qt_windowModality0 = (Qt::WindowModality) windowModality0;
-            QTJAMBI_EXCEPTION_CHECK(__jni_env);
-            QMessageBox *__qt_this = (QMessageBox *) qtjambi_from_jlong(__this_nativeId);
-            QTJAMBI_EXCEPTION_CHECK(__jni_env);
-            Q_ASSERT(__qt_this);
-            __qt_this-&gt;setWindowModality((Qt::WindowModality )__qt_windowModality0);
-            QTJAMBI_DEBUG_TRACE("(native) -&gt; leaving: QMessageBox::setWindowModality(Qt::WindowModality modality)");
-        }
-    </inject-code>
-
-    <modify-function signature="render(QPaintDevice *, const QPoint &amp;, const QRegion &amp;, QFlags&lt;QWidget::RenderFlag&gt;)">
-        <modify-argument index="4">
-            <replace-default-expression with="RenderFlag.DrawWindowBackground, RenderFlag.DrawChildren"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="render(QPainter *, const QPoint &amp;, const QRegion &amp;, QFlags&lt;QWidget::RenderFlag&gt;)">
-        <modify-argument index="4">
-            <replace-default-expression with="RenderFlag.DrawWindowBackground, RenderFlag.DrawChildren"/>
-        </modify-argument>
-    </modify-function>
--->	
-<!--    <modify-function signature="setFocusProxy(QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcFocusProxy"/>
-        </modify-argument>
-    </modify-function> -->
-    <modify-function signature="setInputContext(QInputContext*)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-	<!--
-    <modify-function signature="setLayout(QLayout*)">
-        <modify-argument index="1">
-            <no-null-pointer/>
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-	-->
-    <modify-function signature="setParent(QWidget*,QFlags&lt;Qt::WindowType&gt;)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setParent(QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-	<!--
-    <modify-function signature="setStyle(QStyle*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcStyle"/>
-        </modify-argument>
-    </modify-function>
-	-->
-    <modify-function signature="setTabOrder(QWidget*,QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-        <modify-argument index="2">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="getContentsMargins(int*,int*,int*,int*)const">
-        <access modifier="private"/>
-    </modify-function>
-
-    <modify-function signature="addAction(QAction *)">
-        <modify-argument index="1">
-            <reference-count action="add" variable-name="__rcActions"/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="insertAction(QAction *, QAction *)">
-        <modify-argument index="2">
-            <reference-count action="add" variable-name="__rcActions"/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="addActions(const QList&lt;QAction *&gt; &amp;)">
-        <modify-argument index="1">
-            <reference-count action="add-all" variable-name="__rcActions"/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="insertActions(QAction *, const QList&lt;QAction *&gt; &amp;)">
-        <modify-argument index="2">
-            <reference-count action="add-all" variable-name="__rcActions"/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="removeAction(QAction *)">
-        <modify-argument index="1">
-            <reference-count action="remove" variable-name="__rcActions"/>
-        </modify-argument>
-    </modify-function>
-      <modify-function signature="enabledChange(bool)" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="fontChange(QFont)" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="isEnabledToTLW()const" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="isTopLevel()const" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="paletteChange(QPalette)" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="setShown(bool)" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="topLevelWidget()const" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="windowActivationChange(bool)" remove="all"/> <!--### Obsolete in 4.3-->
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QWidget___" quote-before-line="}// class"/>
-        </inject-code>
-<!--
-        <modify-function signature="setWindowTitle(const QString &amp;)">
-            <inject-code class="java">
-                <argument-map index="1" meta-name="%1"/>
-            if (this instanceof QMessageBox) {
-                qt.GeneratorUtilities.threadCheck(this);
-                if (nativeId() == 0)
-                    throw new QNoNativeResourcesException("Function call on incomplete object of type: " +getClass().getName());
-                __qt_QMessageBox_setWindowTitle(nativeId(), %1);
-                return ;
-            }
-            </inject-code>
-        </modify-function>
-
-
-        <modify-function signature="setWindowModality(Qt::WindowModality)">
-            <inject-code class="java">
-                <argument-map index="1" meta-name="%1"/>
-            if (this instanceof QMessageBox) {
-                qt.GeneratorUtilities.threadCheck(this);
-                if (nativeId() == 0)
-                    throw new QNoNativeResourcesException("Function call on incomplete object of type: " +getClass().getName());
-                __qt_QMessageBox_setWindowModality(nativeId(), %1.value());
-                return ;
-            }
-            </inject-code>
-        </modify-function>
--->
-
-
-
-    </object-type>
-
-  <object-type name="QMessageBox">
-    <modify-function signature="open()" remove="all"/>
-    <modify-function signature="setWindowTitle(const QString &amp;)" remove="all"/>
-    <modify-function signature="setWindowModality(Qt::WindowModality)" remove="all"/>
-    <extra-includes>
-        <include file-name="QPixmap" location="global"/>
-    </extra-includes>
-    <modify-function signature="addButton(QAbstractButton*,QMessageBox::ButtonRole)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="removeButton(QAbstractButton*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setDefaultButton(QPushButton*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setEscapeButton(QAbstractButton*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-
-      <modify-function signature="QMessageBox(QString,QString,QMessageBox::Icon,int,int,int,QWidget*,QFlags&lt;Qt::WindowType&gt;)" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="buttonText(int)const" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="setButtonText(int, QString)" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="standardIcon(QMessageBox::Icon)" remove="all"/> <!--### Obsolete in 4.3-->
-
-      <modify-function signature="critical(QWidget*,QString,QString,int,int,int)" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="critical(QWidget*,QString,QString,QString,QString,QString,int,int)" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="information(QWidget*,QString,QString,int,int,int)" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="information(QWidget*,QString,QString,QString,QString,QString,int,int)" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="question(QWidget*, QString, QString, int, int, int)" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="question(QWidget*, QString, QString, QString, QString, QString, int, int)" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="warning(QWidget*, QString, QString, int, int, int)" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="warning(QWidget*, QString, QString, QString, QString, QString, int, int)" remove="all"/> <!--### Obsolete in 4.3-->
-  </object-type>
-
-  <object-type name="QAbstractSpinBox">
-    <modify-function signature="initStyleOption(QStyleOptionSpinBox*)const">
-        <access modifier="private"/>
-    </modify-function>
-    <modify-function signature="setLineEdit(QLineEdit*)">
-        <modify-argument index="1">
-            <!-- Safe to ignore because the spinbox reparents the line edit -->
-            <reference-count action="ignore"/>
-            <no-null-pointer/>
-        </modify-argument>
-    </modify-function>
-<!--  
-        <inject-code>
-            <insert-template name="gui.init_style_option">
-                <replace from="%TYPE" to="QStyleOptionSpinBox"/>
-                <replace from="final" to=""/>
-            </insert-template>
-        </inject-code>
-
-        <modify-function signature="fixup(QString&amp;)const">
-            <modify-argument index="1">
-                <replace-type modified-type="java.lang.String"/>
-                <conversion-rule class="shell">
-                    jobject %out = (jobject) qtjambi_from_qstring(__jni_env, %in);
-                </conversion-rule>
-                <conversion-rule class="native">
-                    QString %out = qtjambi_to_qstring(__jni_env, (jstring) %in);
-                    QString *__qt_converted = &amp;%out;
-                </conversion-rule>
-            </modify-argument>
-
-            <modify-argument index="0">
-                <replace-type modified-type="java.lang.String"/>
-                <conversion-rule class="native">
-                    jobject %out = (jobject) qtjambi_from_qstring(__jni_env, *__qt_converted);
-                </conversion-rule>
-                <conversion-rule class="shell">
-                    %1 = qtjambi_to_qstring(__jni_env, (jstring) %in);
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>
-
-        <modify-function signature="validate(QString&amp;,int&amp;)const">
-            <modify-argument index="1">
-                <replace-type modified-type="qt.gui.QValidator$QValidationData"/>
-                <conversion-rule class="shell">
-                    <insert-template name="gui.convert_validationdata_to_java">
-                        <replace from="%STRING" to="%1"/>
-                        <replace from="%POS" to="%2"/>
-                    </insert-template>
-                </conversion-rule>
-                <conversion-rule class="native">
-                    <insert-template name="gui.convert_validationdata_to_string"/>
-                </conversion-rule>
-            </modify-argument>
-
-            <modify-argument index="2">
-                <remove-argument/>
-                <conversion-rule class="shell">
-                    // nothing needed
-                </conversion-rule>
-                <conversion-rule class="native">
-                    <insert-template name="gui.convert_validationdata_to_pos">
-                        <replace from="%VALIDATIONDATA" to="%1"/>
-                    </insert-template>
-                </conversion-rule>
-            </modify-argument>
-
-            <modify-argument index="0">
-                <conversion-rule class="native">
-                    <insert-template name="gui.cleanup_validationdata_from_java"/>
-                    jint %out = %in;
-                </conversion-rule>
-                <conversion-rule class="shell">
-                    <insert-template name="gui.cleanup_validationdata_to_java">
-                        <replace from="%STRING" to="%1"/>
-                        <replace from="%POS" to="%2"/>
-                    </insert-template>
-                    QValidator::State %out = (QValidator::State) qtjambi_to_enumerator(__jni_env, %in);
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>-->
-    </object-type>
-
-  <object-type name="QTextFrame" delete-in-main-thread="yes">
-    <extra-includes>
-        <include file-name="QTextCursor" location="global"/>
-    </extra-includes>
-  </object-type>
-
-  <object-type name="QImageIOHandler">
-    <extra-includes>
-        <include file-name="QRect" location="global"/>
-    </extra-includes>
-    <modify-function signature="setFormat(const QByteArray &amp;)const">
-        <remove/>
-    </modify-function>
-    <modify-function signature="setDevice(QIODevice*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcDevice"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="read(QImage*)">
-        <modify-argument index="1">
-            <replace-type modified-type="QImage"/>
-<!--            <conversion-rule class="shell">
-                jobject %out = qtjambi_from_object(__jni_env, %in, "QImage", "com/trolltech/qt/gui/", false);
-
-                QtJambiLink *__link = %out != 0 ? QtJambiLink::findLink(__jni_env, %out) : 0;
-            </conversion-rule>
-            <conversion-rule class="native">
-                QImage *%out = (QImage *) qtjambi_to_object(__jni_env, %in);
-            </conversion-rule> -->
-        </modify-argument>
-<!--        <modify-argument index="0">
-            <conversion-rule class="shell">
-                // Invalidate object
-                if (__link != 0) __link-&gt;resetObject(__jni_env);
-                bool %out = (bool) %in;
-            </conversion-rule>
-        </modify-argument>-->
-    </modify-function>
-
-      <modify-function signature="name()const" remove="all"/> <!--### Obsolete in 4.3-->
-  </object-type>
-
-  <object-type name="QProxyModel">
-    <modify-function signature="parent()const" remove="all"/>
-    <extra-includes>
-        <include file-name="QPixmap" location="global"/>
-        <include file-name="QStringList" location="global"/>
-        <include file-name="QSize" location="global"/>
-    </extra-includes>
-    <modify-function signature="setModel(QAbstractItemModel*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcModel"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-
-  <object-type name="QImageReader">
-    <extra-includes>
-        <include file-name="QColor" location="global"/>
-        <include file-name="QRect" location="global"/>
-        <include file-name="QSize" location="global"/>
-        <include file-name="QStringList" location="global"/>
-        <include file-name="QImage" location="global"/>
-    </extra-includes>
-    <modify-function signature="read(QImage*) ">
-        <remove/>
-    </modify-function>
-    <modify-function signature="setDevice(QIODevice*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcDevice"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-
-  <object-type name="QMovie">
-    <extra-includes>
-        <include file-name="QColor" location="global"/>
-        <include file-name="QImage" location="global"/>
-        <include file-name="QPixmap" location="global"/>
-        <include file-name="QRect" location="global"/>
-        <include file-name="QSize" location="global"/>
-    </extra-includes>
-    <modify-function signature="cacheMode()">
-        <remove/>
-    </modify-function>
-    <modify-function signature="setDevice(QIODevice*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcDevice"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-
-  <object-type name="QPageSetupDialog">
-      <modify-function signature="open(QObject *, const char *)" remove="all"/> <!-- # TODO -->
-
-  </object-type>
-
-  <object-type name="QTabWidget">
-<!--    <modify-function signature="initStyleOption(QStyleOptionTabWidgetFrame*)const">
-        <access modifier="private"/>
-    </modify-function>
-    <inject-code>
-        <insert-template name="gui.init_style_option">
-            <replace from="%TYPE" to="QStyleOptionTabWidgetFrame"/>
-        </insert-template>
-    </inject-code>-->
-    <modify-function signature="addTab(QWidget*,QIcon,QString)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="addTab(QWidget*,QString)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertTab(int,QWidget*,QString)">
-        <modify-argument index="2">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertTab(int,QWidget*,QIcon,QString)">
-        <modify-argument index="2">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setCornerWidget(QWidget*,Qt::Corner)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setCurrentWidget(QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setTabBar(QTabBar*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-  <object-type name="QDrag">
-    <extra-includes>
-        <include file-name="QPoint" location="global"/>
-        <include file-name="QPixmap" location="global"/>
-    </extra-includes>
-    <modify-function signature="setMimeData(QMimeData*)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="start(QFlags&lt;Qt::DropAction&gt;)" remove="all"/> <!--### Obsolete in 4.3-->
-  </object-type>
-
-  <object-type name="QDateTimeEdit">
-    <modify-function signature="setCalendarWidget(QCalendarWidget*)">
-        <modify-argument index="1">
-            <!-- Safe to ignore because widget is reparented -->
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    </object-type>
-
-  <object-type name="QSortFilterProxyModel">
-     <modify-function signature="parent()const" remove="all"/>
-    <extra-includes>
-        <include file-name="QItemSelection" location="global"/>
-        <include file-name="QStringList" location="global"/>
-        <include file-name="QSize" location="global"/>
-    </extra-includes>
-
-    <modify-function signature="setSourceModel(QAbstractItemModel *)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcSourceModel"/>
-        </modify-argument>
-    </modify-function>
-
-      <modify-function signature="clear()" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="filterChanged()" remove="all"/> <!--### Obsolete in 4.3-->
-  
-        <modify-function signature="match(QModelIndex, int, QVariant, int, QFlags&lt;Qt::MatchFlag&gt;) const">
-            <modify-argument index="5">
-                <replace-default-expression with="Qt.MatchFlag.MatchStartsWith | Qt.MatchFlag.MatchWrap"/>
-            </modify-argument>
-        </modify-function>
-    </object-type>
-
-  <object-type name="QSlider">
-<!--    <modify-function signature="initStyleOption(QStyleOptionSlider*)const">
-        <access modifier="private"/>
-    </modify-function>
-  
-        <inject-code>
-            <insert-template name="gui.init_style_option">
-                <replace from="%TYPE" to="QStyleOptionSlider"/>
-            </insert-template>
-        </inject-code>-->
-    </object-type>
-
-  <object-type name="QInputContext">
-    <extra-includes>
-        <include file-name="QTextFormat" location="global"/>
-    </extra-includes>
-    <modify-function signature="setFocusWidget(QWidget*)">
-        <remove/>
-    </modify-function>
-    <modify-function signature="filterEvent(const QEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="mouseHandler(int,QMouseEvent*)">
-        <modify-argument index="2" invalidate-after-use="yes"/>
-    </modify-function>
-
-  </object-type>
-
-  <object-type name="QProgressDialog">
-        <modify-function signature="open(QObject *, const char *)" remove="all"/> <!-- # TODO -->
-
-    <modify-function signature="setBar(QProgressBar*)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setCancelButton(QPushButton*)">
-        <modify-argument index="1">
-            <!-- Safe to ignore because button is reparented -->
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setLabel(QLabel*)">
-        <modify-argument index="1">
-            <!-- Safe to ignore because label is reparented -->
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-
-  </object-type>
-
-  <object-type name="QLabel">
-<!--    <modify-function signature="picture()const">
-        <access modifier="private"/>
-        <rename to="picture_private"/>
-    </modify-function>
--->
-    <modify-function signature="setBuddy(QWidget *)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcBuddy"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setMovie(QMovie *)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcMovie"/>
-        </modify-argument>
-    </modify-function>
-<!--    <modify-function signature="pixmap()const">
-        <access modifier="private"/>
-        <rename to="pixmap_private"/>
-    </modify-function>
-
-        <inject-code>
-            <insert-template name="gui.getter_returning_nativepointer">
-                <replace from="%RETURN_TYPE" to="QPicture"/>
-                <replace from="%FUNCTION_NAME" to="picture"/>
-            </insert-template>
-        </inject-code>
-        <inject-code>
-            <insert-template name="gui.getter_returning_nativepointer">
-                <replace from="%RETURN_TYPE" to="QPixmap"/>
-                <replace from="%FUNCTION_NAME" to="pixmap"/>
-            </insert-template>
-        </inject-code> -->
-    </object-type>
-
-  <object-type name="QFileDialog">
-    <extra-includes>
-        <include file-name="QUrl" location="global"/>
-    </extra-includes>
-    <modify-function signature="open()" remove="all"/>
-<!--     <modify-function signature="setVisible(bool)" remove="all"/> // properties_d -->
-    <modify-function signature="getOpenFileName(QWidget*,QString,QString,QString,QString*,QFlags&lt;QFileDialog::Option&gt;)">
-        <modify-argument index="1">
-            <remove-default-expression/>
-        </modify-argument>
-        <modify-argument index="2">
-            <remove-default-expression/>
-        </modify-argument>
-        <modify-argument index="3">
-            <remove-default-expression/>
-        </modify-argument>
-        <modify-argument index="4">
-            <remove-default-expression/>
-        </modify-argument>
-        <modify-argument index="5">
-            <remove-default-expression/>
-        </modify-argument>
-<!--        <modify-argument index="6">
-            <remove-default-expression/>
-        </modify-argument>-->
-    </modify-function>
-<!--
-    <modify-function signature="getOpenFileNames(QWidget*,QString,QString,QString,QString*,QFlags&lt;QFileDialog::Option&gt;)">
-        <access modifier="private"/>
-        <modify-argument index="1">
-            <remove-default-expression/>
-        </modify-argument>
-        <modify-argument index="2">
-            <remove-default-expression/>
-        </modify-argument>
-        <modify-argument index="3">
-            <remove-default-expression/>
-        </modify-argument>
-        <modify-argument index="4">
-            <remove-default-expression/>
-        </modify-argument>
-        <modify-argument index="5">
-            <remove-default-expression/>
-        </modify-argument>
-        <modify-argument index="6">
-            <remove-default-expression/>
-        </modify-argument>
-    </modify-function>
--->
-    <modify-function signature="getSaveFileName(QWidget*,QString,QString,QString,QString*,QFlags&lt;QFileDialog::Option&gt;)">
-        <modify-argument index="1">
-            <remove-default-expression/>
-        </modify-argument>
-        <modify-argument index="2">
-            <remove-default-expression/>
-        </modify-argument>
-        <modify-argument index="3">
-            <remove-default-expression/>
-        </modify-argument>
-        <modify-argument index="4">
-            <remove-default-expression/>
-        </modify-argument>
-        <modify-argument index="5">
-            <remove-default-expression/>
-        </modify-argument>
-<!--        <modify-argument index="6">
-            <remove-default-expression/>
-        </modify-argument>-->
-    </modify-function>
-
-    <modify-function signature="setIconProvider(QFileIconProvider*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcIconProvider"/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="setItemDelegate(QAbstractItemDelegate*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcItemDelegate"/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="setProxyModel(QAbstractProxyModel*)">
-        <modify-argument index="1">
-            <!-- Reparented -->
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QFileDialog___" quote-before-line="}// class"/>
-        </inject-code>
-<!--
-        <template name="gui.filedialog_get_xxx_filename">
-        public static %TYPE %FUNCTION_NAME(QWidget parent, string caption, String dir, Filter filter, Options options) {
-            QNativePointer np = filter != null ? new QNativePointer(QNativePointer.Type.String) : null;
-            %TYPE returned = %FUNCTION_NAME(parent, caption, dir, filter != null ? filter.filter : "", np, options);
-            if (filter != null)
-                filter.selectedFilter = np.stringValue();
-            return returned;
-        }
-
-        public static %TYPE %FUNCTION_NAME(QWidget parent, String caption, String dir, Filter filter, Option ... options) {
-            QNativePointer np = filter != null ? new QNativePointer(QNativePointer.Type.String) : null;
-            %TYPE returned = %FUNCTION_NAME(parent, caption, dir, filter != null ? filter.filter : "", np, options);
-            if (filter != null)
-                filter.selectedFilter = np.stringValue();
-            return returned;
-        }
-
-        public static %TYPE %FUNCTION_NAME(QWidget parent, String caption, String dir, Filter filter) {
-            return %FUNCTION_NAME(parent, caption, dir, filter, new Options(0));
-        }
-
-        public static %TYPE %FUNCTION_NAME(QWidget parent, String caption, String dir) {
-            return %FUNCTION_NAME(parent, caption, dir, null);
-        }
-
-        public static %TYPE %FUNCTION_NAME(QWidget parent, String caption) {
-            return %FUNCTION_NAME(parent, caption, "");
-        }
-
-        public static %TYPE %FUNCTION_NAME(QWidget parent) {
-            return %FUNCTION_NAME(parent, "");
-        }
-
-        public static %TYPE %FUNCTION_NAME() {
-            return %FUNCTION_NAME(null);
-        }
-
-        </template>
-
-        <inject-code>
-            <insert-template name="gui.filedialog_get_xxx_filename">
-                <replace from="%FUNCTION_NAME" to="getOpenFileName"/>
-                <replace from="%TYPE" to="String"/>
-            </insert-template>
-        </inject-code>
-        <inject-code>
-            <insert-template name="gui.filedialog_get_xxx_filename">
-                <replace from="%FUNCTION_NAME" to="getOpenFileNames"/>
-                <replace from="%TYPE" to="java.util.List&lt;String&gt;"/>
-            </insert-template>
-        </inject-code>
-        <inject-code>
-            <insert-template name="gui.filedialog_get_xxx_filename">
-                <replace from="%FUNCTION_NAME" to="getSaveFileName"/>
-                <replace from="%TYPE" to="String"/>
-            </insert-template>
-        </inject-code>-->
-    </object-type>
-
-  <object-type name="QErrorMessage"/>
-
-  <object-type name="QTabBar">
-    <extra-includes>
-        <include file-name="QIcon" location="global"/>
-    </extra-includes>
-<!--    <modify-function signature="initStyleOption(QStyleOptionTab*,int)const">
-        <access modifier="private"/>
-    </modify-function>
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QTabBar___" quote-before-line="}// class"/>
-        </inject-code>
--->
-    </object-type>
-
-  <object-type name="QStandardItemModel">
-    <modify-function signature="insertColumn(int,const QModelIndex &amp;)" remove="all"/>
-    <modify-function signature="insertRow(int,const QModelIndex &amp;)" remove="all"/>
-    <modify-function signature="parent()const" remove="all"/>
-    <extra-includes>
-        <include file-name="QStringList" location="global"/>
-        <include file-name="QSize" location="global"/>
-    </extra-includes>
-
-    <modify-function signature="appendColumn(const QList&lt;QStandardItem *&gt;&amp;)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="takeColumn(int)">
-        <modify-argument index="return">
-            <define-ownership class="java" owner="default"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="takeRow(int)">
-        <modify-argument index="return">
-            <define-ownership class="java" owner="default"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="takeHorizontalHeaderItem(int)">
-        <modify-argument index="return">
-            <define-ownership class="java" owner="default"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="takeVerticalHeaderItem(int)">
-        <modify-argument index="return">
-            <define-ownership class="java" owner="default"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="takeItem(int,int)">
-        <modify-argument index="return">
-            <define-ownership class="java" owner="default"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="appendRow(const QList&lt;QStandardItem *&gt;&amp;)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="appendRow(QStandardItem *)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertColumn(int, const QList&lt;QStandardItem *&gt;&amp;)">
-        <modify-argument index="2">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertRow(int, const QList&lt;QStandardItem *&gt;&amp;)">
-        <modify-argument index="2">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertRow(int, QStandardItem *)">
-        <modify-argument index="2">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setHorizontalHeaderItem(int, QStandardItem *)">
-        <modify-argument index="2">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setItem(int, int, QStandardItem *)">
-        <modify-argument index="3">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setItem(int, QStandardItem *)">
-        <modify-argument index="2">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setItemPrototype(const QStandardItem *)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setVerticalHeaderItem(int, QStandardItem *)">
-        <modify-argument index="2">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-
-  <object-type name="QRadioButton">
-<!--    <modify-function signature="initStyleOption(QStyleOptionButton*)const">
-        <access modifier="private"/>
-    </modify-function>
-  
-        <inject-code>
-            <insert-template name="gui.init_style_option">
-                <replace from="%TYPE" to="QStyleOptionButton"/>
-            </insert-template>
-        </inject-code>-->
-    </object-type>
-
-  <object-type name="QScrollBar">
-<!--    <modify-function signature="initStyleOption(QStyleOptionSlider*)const">
-        <access modifier="private"/>
-    </modify-function>
-  
-        <inject-code>
-            <insert-template name="gui.init_style_option">
-                <replace from="%TYPE" to="QStyleOptionSlider"/>
-            </insert-template>
-        </inject-code>-->
-    </object-type>
-
-  <object-type name="QClipboard">
-    <extra-includes>
-        <include file-name="QImage" location="global"/>
-        <include file-name="QPixmap" location="global"/>
-    </extra-includes>
-    <modify-function signature="setMimeData(QMimeData *, QClipboard::Mode)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-
-
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QClipboard___" quote-before-line="}// class"/>
-        </inject-code>
-
-    </object-type>
-
-  <object-type name="QAbstractScrollArea">
-    <modify-function signature="setupViewport(QWidget *)" access="non-final"/>
-    <modify-function signature="addScrollBarWidget(QWidget*,QFlags&lt;Qt::AlignmentFlag&gt;)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setCornerWidget(QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setHorizontalScrollBar(QScrollBar*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="setVerticalScrollBar(QScrollBar*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="setViewport(QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="setupViewport(QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="viewportEvent(QEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QAbstractScrollArea___" quote-before-line="}// class"/>
-        </inject-code>
-
-    </object-type>
-
-  <object-type name="QPaintEngineState">
-    <extra-includes>
-        <include file-name="QPainterPath" location="global"/>
-    </extra-includes>
-	<modify-function signature="painter() const">
-		<store-result/>
-	</modify-function>
-  </object-type>
-
-  <object-type name="QRubberBand">
-<!--    <modify-function signature="initStyleOption(QStyleOptionRubberBand*)const">
-        <access modifier="private"/>
-    </modify-function>-->
-    <modify-function signature="move(int,int)" rename="moveRubberBand"/>
-    <modify-function signature="move(const QPoint &amp;)" rename="moveRubberBand"/>
-    <modify-function signature="resize(int,int)" rename="resizeRubberBand"/>
-    <modify-function signature="resize(const QSize &amp;)" rename="resizeRubberBand"/>
-    <modify-function signature="setGeometry(int,int,int,int)" rename="setRubberBandGeometry"/>
-    <modify-function signature="setGeometry(const QRect &amp;)" rename="setRubberBandGeometry"/>
-  
-<!--        <inject-code>
-            <insert-template name="gui.init_style_option">
-                <replace from="%TYPE" to="QStyleOptionRubberBand"/>
-            </insert-template>
-        </inject-code> -->
-    </object-type>
-
-  <object-type name="QTextLayout">
-    <extra-includes>
-        <include file-name="QTextOption" location="global"/>
-    </extra-includes>
-  </object-type>
-
-  <object-type name="QTableWidget">
-    <modify-function signature="mimeData(const QList&lt;QTableWidgetItem*&gt;)const">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="isSortingEnabled()const" remove="all"/>
-    <modify-function signature="setSortingEnabled(bool)" remove="all"/>
-    <modify-function signature="setHorizontalHeaderItem(int, QTableWidgetItem *)">
-        <modify-argument index="2">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setItem(int, int, QTableWidgetItem *)">
-        <modify-argument index="3">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="takeHorizontalHeaderItem(int)">
-        <modify-argument index="return">
-            <define-ownership class="java" owner="default"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="takeVerticalHeaderItem(int)">
-        <modify-argument index="return">
-            <define-ownership class="java" owner="default"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="takeItem(int,int)">
-        <modify-argument index="return">
-            <define-ownership class="java" owner="default"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setItemPrototype(const QTableWidgetItem *)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setVerticalHeaderItem(int, QTableWidgetItem *)">
-        <modify-argument index="2">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setCellWidget(int,int,QWidget*)">
-        <modify-argument index="3">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setCurrentItem(QTableWidgetItem*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setCurrentItem(QTableWidgetItem*,QFlags&lt;QItemSelectionModel::SelectionFlag&gt;)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setItemSelected(const QTableWidgetItem*,bool)">
-        <remove/>
-    </modify-function>
-    <modify-function signature="isItemSelected(const QTableWidgetItem*)const">
-        <remove/>
-    </modify-function>
-    <modify-function signature="setModel(QAbstractItemModel*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-  <object-type name="QTextDocument">
-    <extra-includes>
-        <include file-name="QTextBlock" location="global"/>
-        <include file-name="QTextFormat" location="global"/>
-        <include file-name="QTextCursor" location="global"/>
-    </extra-includes>
-    <modify-function signature="setDocumentLayout(QAbstractTextDocumentLayout*)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-<!--  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QTextDocument___" quote-before-line="}// class"/>
-        </inject-code>
--->
-    </object-type>
-
-  <object-type name="QSplitter">
-
-    <modify-function signature="getRange(int,int*,int*)const">
-        <access modifier="private"/>
-    </modify-function>
-    <modify-function signature="addWidget(QWidget *)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertWidget(int, QWidget *)">
-        <modify-argument index="2">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QSplitter___" quote-before-line="}// class"/>
-        </inject-code>
-
-    </object-type>
-
-  <object-type name="QGroupBox">
-<!--    <modify-function signature="initStyleOption(QStyleOptionGroupBox*)const">
-        <access modifier="private"/>
-    </modify-function>
-  
-        <inject-code>
-            <insert-template name="gui.init_style_option">
-                <replace from="%TYPE" to="QStyleOptionGroupBox"/>
-            </insert-template>
-        </inject-code>-->
-    </object-type>
-
-  <object-type name="QStackedWidget">
-    <modify-function signature="addWidget(QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertWidget(int,QWidget*)">
-        <modify-argument index="2">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="removeWidget(QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setCurrentWidget(QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-
-  <object-type name="QSplitterHandle">
-  </object-type>
-
-  <object-type name="QDial">
-<!--    <modify-function signature="initStyleOption(QStyleOptionSlider*)const">
-        <access modifier="private"/>
-    </modify-function>
-  
-        <inject-code>
-            <insert-template name="gui.init_style_option">
-                <replace from="%TYPE" to="QStyleOptionSlider"/>
-            </insert-template>
-        </inject-code>-->
-    </object-type>
-
-  <object-type name="QLineEdit">
-<!--    <modify-function signature="initStyleOption(QStyleOptionFrame*)const">
-        <access modifier="private"/>
-    </modify-function>-->
-    <modify-function signature="setCompleter(QCompleter *)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcCompleter"/>
-        </modify-argument>
-    </modify-function>
-     <modify-function signature="setValidator(const QValidator *)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcValidator"/>
-        </modify-argument>
-    </modify-function>
-<!--  
-        <inject-code>
-            <insert-template name="gui.init_style_option">
-                <replace from="%TYPE" to="QStyleOptionFrame"/>
-            </insert-template>
-        </inject-code>-->
-    </object-type>
-
-  <object-type name="QLCDNumber"/>
-
-  <object-type name="QSplashScreen">
-    <modify-function signature="showMessage(const QString &amp;, int, const QColor &amp;)">
-      <modify-argument index="3">
-        <replace-default-expression with="QColor.Black"/>
-      </modify-argument>
-    </modify-function>
-    <modify-function signature="repaint()" remove="all"/>
-    <modify-function signature="drawContents(QPainter*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-  </object-type>
-
-  <object-type name="QDockWidget">
-<!--    <modify-function signature="initStyleOption(QStyleOptionDockWidget*)const">
-        <access modifier="private"/>
-    </modify-function>
-	
-    <inject-code>
-        <insert-template name="gui.init_style_option">
-            <replace from="%TYPE" to="QStyleOptionDockWidget"/>
-        </insert-template>
-    </inject-code>-->
-    <modify-function signature="setTitleBarWidget(QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setWidget(QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-
-  <object-type name="QAbstractProxyModel">
-    <extra-includes>
-        <include file-name="QItemSelection" location="global"/>
-        <include file-name="QStringList" location="global"/>
-        <include file-name="QSize" location="global"/>
-    </extra-includes>
-
-    <modify-function signature="setSourceModel(QAbstractItemModel *)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcSourceModel"/>
-        </modify-argument>
-    </modify-function>
-
-  </object-type>
-
-  <object-type name="QDesktopWidget">
-  </object-type>
-
-  <object-type name="QFrame">
-  </object-type>
-
-  <object-type name="QTextTable">
-    <modify-function signature="format() const">
-        <rename to="tableFormat"/>
-    </modify-function>
-    <extra-includes>
-        <include file-name="QTextCursor" location="global"/>
-    </extra-includes>
-  </object-type>
-
-  <object-type name="QSpinBox">
-    <modify-function signature="valueChanged(const QString &amp;)">
-        <rename to="valueStringChanged"/>
-    </modify-function>
-  </object-type>
-
-  <object-type name="QTextBrowser">
-    <modify-function signature="highlighted(const QString &amp;)">
-        <rename to="highlightedString"/>
-    </modify-function>
-  </object-type>
-
-  <object-type name="QDoubleSpinBox">
-    <modify-function signature="valueChanged(const QString &amp;)">
-        <rename to="valueStringChanged"/>
-    </modify-function>
-  </object-type>
-
-  <object-type name="QButtonGroup">
-    <modify-function signature="buttonClicked(int)">
-        <rename to="buttonIdClicked"/>
-    </modify-function>
-    <modify-function signature="buttonPressed(int)">
-        <rename to="buttonIdPressed"/>
-    </modify-function>
-    <modify-function signature="buttonReleased(int)">
-        <rename to="buttonIdReleased"/>
-    </modify-function>
-    <modify-function signature="addButton(QAbstractButton *)">
-        <modify-argument index="1">
-            <reference-count action="add" variable-name="__rcButtons"/>
-            <no-null-pointer/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="addButton(QAbstractButton *, int)">
-        <modify-argument index="1">
-            <reference-count action="add" variable-name="__rcButtons"/>
-            <no-null-pointer/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="removeButton(QAbstractButton *)">
-        <modify-argument index="1">
-            <reference-count action="remove" variable-name="__rcButtons"/>
-            <no-null-pointer/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setId(QAbstractButton *,int)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-
-  <object-type name="QToolBar">
-    <modify-function signature="addAction(QAction *)" remove="all"/>
-<!--    <modify-function signature="initStyleOption(QStyleOptionToolBar*)const">
-        <access modifier="private"/>
-    </modify-function>-->
-    <modify-function signature="addAction(QIcon,QString,const QObject*,const char*)">
-        <remove/>
-    </modify-function>
-    <modify-function signature="addAction(QString,const QObject*,const char*)">
-        <remove/>
-    </modify-function>
-    <modify-function signature="addWidget(QWidget*)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertWidget(QAction*,QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-        <modify-argument index="2">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertSeparator(QAction*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QToolBar___" quote-before-line="}// class"/>
-        </inject-code>
-<!--  
-        <inject-code>
-            <insert-template name="gui.init_style_option">
-                <replace from="%TYPE" to="QStyleOptionToolBar"/>
-            </insert-template>
-        </inject-code>
-        <inject-code>
-            <insert-template name="gui.addAction">
-                <replace from="%POST_CALL" to=""/>
-                <replace from=" %END_EXTRA" to=""/>
-                <replace from=" %END_CALL_EXTRA" to=""/>
-                <replace from="%EXTRA" to="QIcon icon,"/>
-                <replace from="%CALL_EXTRA" to="icon,"/>
-            </insert-template>
-        </inject-code>
-        <inject-code>
-            <insert-template name="gui.addAction">
-                <replace from="%POST_CALL" to=""/>
-                <replace from=" %END_EXTRA" to=""/>
-                <replace from=" %END_CALL_EXTRA" to=""/>
-                <replace from="%EXTRA " to=""/>
-                <replace from="%CALL_EXTRA " to=""/>
-            </insert-template>
-        </inject-code> -->
-    </object-type>
-
-  <object-type name="QPaintEngine">
-
-	<modify-function signature="painter() const">
-		<store-result/>
-	</modify-function>
-
-    <modify-function signature="begin(QPaintDevice*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="updateState(QPaintEngineState)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="drawTextItem(QPointF,QTextItem)">
-        <modify-argument index="2" invalidate-after-use="yes"/>
-    </modify-function>
-
-    <extra-includes>
-        <include file-name="QVarLengthArray" location="global"/>
-    </extra-includes>
-    <modify-function signature="setPaintDevice(QPaintDevice*)">
-        <remove/>
-    </modify-function>
-    <modify-field name="state" read="false" write="false"/>
-<!--  
-        <modify-function signature="drawLines(const QLine *, int)">
-            <modify-argument index="1">
-                <replace-type modified-type="qt.gui.QLine[]"/>
-                <conversion-rule class="shell">
-                jobjectArray %out = qtjambi_from_array(__jni_env, %in, %2,
-                                                       "QLine", "com/trolltech/qt/gui/");
-                </conversion-rule>
-                <conversion-rule class="native">
-                QVarLengthArray&lt;QLine, 32&gt; __lines;
-                int __size = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
-                for (int i=0; i&lt;__size; ++i)
-                    __lines.append(*(QLine *)qtjambi_to_object(__jni_env, __jni_env-&gt;GetObjectArrayElement((jobjectArray) %in, i)));
-                const QLine *%out = %1 == 0 ? 0 : __lines.constData();
-                </conversion-rule>
-
-            </modify-argument>
-            <modify-argument index="2">
-                <remove-argument/>
-                <conversion-rule class="shell">
-                /* nothing */
-                </conversion-rule>
-                <conversion-rule class="native">
-                int %out = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>
-
-        <modify-function signature="drawLines(const QLineF *, int)">
-            <modify-argument index="1">
-                <replace-type modified-type="qt.gui.QLineF[]"/>
-                <conversion-rule class="shell">
-                jobjectArray %out = qtjambi_from_array(__jni_env, %in, %2,
-                                                       "QLineF", "com/trolltech/qt/gui/");
-                </conversion-rule>
-                <conversion-rule class="native">
-                QVarLengthArray&lt;QLineF, 32&gt; __data;
-                int __size = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
-                for (int i=0; i&lt;__size; ++i)
-                    __data.append(*(QLineF *)qtjambi_to_object(__jni_env, __jni_env-&gt;GetObjectArrayElement((jobjectArray) %in, i)));
-                const QLineF *%out = %1 == 0 ? 0 : __data.constData();
-                </conversion-rule>
-            </modify-argument>
-            <modify-argument index="2">
-                <remove-argument/>
-                <conversion-rule class="shell">
-                /* nothing */
-                </conversion-rule>
-                <conversion-rule class="native">
-                int %out = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>
-
-        <modify-function signature="drawRects(const QRectF *, int)">
-            <modify-argument index="1">
-                <replace-type modified-type="qt.core.QRectF[]"/>
-                <conversion-rule class="shell">
-                jobjectArray %out = qtjambi_from_array(__jni_env, %in, %2,
-                                                       "QRectF", "com/trolltech/qt/core/");
-                </conversion-rule>
-                <conversion-rule class="native">
-                QVarLengthArray&lt;QRectF, 32&gt; __data;
-                int __size = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
-                for (int i=0; i&lt;__size; ++i)
-                    __data.append(*(QRectF *)qtjambi_to_object(__jni_env, __jni_env-&gt;GetObjectArrayElement((jobjectArray) %in, i)));
-                const QRectF *%out = %1 == 0 ? 0 : __data.constData();
-                </conversion-rule>
-            </modify-argument>
-            <modify-argument index="2">
-                <remove-argument/>
-                <conversion-rule class="shell">
-                /* nothing */
-                </conversion-rule>
-                <conversion-rule class="native">
-                int %out = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>
-
-        <modify-function signature="drawRects(const QRect *, int)">
-            <modify-argument index="1">
-                <replace-type modified-type="qt.core.QRect[]"/>
-                <conversion-rule class="shell">
-                jobjectArray %out = qtjambi_from_array(__jni_env, %in, %2,
-                                                       "QRect", "com/trolltech/qt/core/");
-                </conversion-rule>
-                <conversion-rule class="native">
-                QVarLengthArray&lt;QRect, 32&gt; __data;
-                int __size = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
-                for (int i=0; i&lt;__size; ++i)
-                    __data.append(*(QRect *)qtjambi_to_object(__jni_env, __jni_env-&gt;GetObjectArrayElement((jobjectArray) %in, i)));
-                const QRect *%out = %1 == 0 ? 0 : __data.constData();
-                </conversion-rule>
-            </modify-argument>
-            <modify-argument index="2">
-                <remove-argument/>
-                <conversion-rule class="shell">
-                /* nothing */
-                </conversion-rule>
-                <conversion-rule class="native">
-                int %out = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>
-
-        <modify-function signature="drawPoints(const QPoint *, int)">
-            <modify-argument index="1">
-                <replace-type modified-type="qt.core.QPoint[]"/>
-                <conversion-rule class="shell">
-                jobjectArray %out = qtjambi_from_array(__jni_env, %in, %2,
-                                                       "QPoint", "com/trolltech/qt/core/");
-                </conversion-rule>
-                <conversion-rule class="native">
-                QVarLengthArray&lt;QPoint, 32&gt; __data;
-                int __size = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
-                for (int i=0; i&lt;__size; ++i)
-                    __data.append(*(QPoint *)qtjambi_to_object(__jni_env, __jni_env-&gt;GetObjectArrayElement((jobjectArray) %in, i)));
-                const QPoint *%out = %1 == 0 ? 0 : __data.constData();
-                </conversion-rule>
-            </modify-argument>
-
-            <modify-argument index="2">
-                <remove-argument/>
-                <conversion-rule class="shell">
-                /* nothing */
-                </conversion-rule>
-                <conversion-rule class="native">
-                int %out = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>
-
-        <modify-function signature="drawPoints(const QPointF *, int)">
-            <modify-argument index="1">
-                <replace-type modified-type="qt.core.QPointF[]"/>
-                <conversion-rule class="shell">
-                jobjectArray %out = qtjambi_from_array(__jni_env, %in, %2,
-                                                       "QPointF", "com/trolltech/qt/core/");
-                </conversion-rule>
-                <conversion-rule class="native">
-                QVarLengthArray&lt;QPointF, 32&gt; __data;
-                int __size = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
-                for (int i=0; i&lt;__size; ++i)
-                    __data.append(*(QPointF *)qtjambi_to_object(__jni_env, __jni_env-&gt;GetObjectArrayElement((jobjectArray) %in, i)));
-                const QPointF *%out = %1 == 0 ? 0 : __data.constData();
-                </conversion-rule>
-            </modify-argument>
-            <modify-argument index="2">
-                <remove-argument/>
-                <conversion-rule class="shell">
-                /* nothing */
-                </conversion-rule>
-                <conversion-rule class="native">
-                int %out = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>
-
-        <modify-function signature="drawPolygon(const QPoint *, int, QPaintEngine::PolygonDrawMode)">
-            <modify-argument index="1">
-                <replace-type modified-type="qt.core.QPoint[]"/>
-                <conversion-rule class="shell">
-                jobjectArray %out = qtjambi_from_array(__jni_env, %in, %2,
-                                                       "QPoint", "com/trolltech/qt/core/");
-                </conversion-rule>
-                <conversion-rule class="native">
-                QVarLengthArray&lt;QPoint, 32&gt; __data;
-                int __size = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
-                for (int i=0; i&lt;__size; ++i)
-                    __data.append(*(QPoint *)qtjambi_to_object(__jni_env, __jni_env-&gt;GetObjectArrayElement((jobjectArray) %in, i)));
-                const QPoint *%out = %1 == 0 ? 0 : __data.constData();
-                </conversion-rule>
-            </modify-argument>
-            <modify-argument index="2">
-                <remove-argument/>
-                <conversion-rule class="shell">
-                /* nothing */
-                </conversion-rule>
-                <conversion-rule class="native">
-                int %out = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>
-
-        <modify-function signature="drawPolygon(const QPointF *, int, QPaintEngine::PolygonDrawMode)">
-            <modify-argument index="1">
-                <replace-type modified-type="qt.core.QPointF[]"/>
-                <conversion-rule class="shell">
-                jobjectArray %out = qtjambi_from_array(__jni_env, %in, %2,
-                                                       "QPointF", "com/trolltech/qt/core/");
-                </conversion-rule>
-                <conversion-rule class="native">
-                QVarLengthArray&lt;QPointF, 32&gt; __data;
-                int __size = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
-                for (int i=0; i&lt;__size; ++i)
-                    __data.append(*(QPointF *)qtjambi_to_object(__jni_env, __jni_env-&gt;GetObjectArrayElement((jobjectArray) %in, i)));
-                const QPointF *%out = %1 == 0 ? 0 : __data.constData();
-                </conversion-rule>
-            </modify-argument>
-            <modify-argument index="2">
-                <remove-argument/>
-                <conversion-rule class="shell">
-                /* nothing */
-                </conversion-rule>
-                <conversion-rule class="native">
-                int %out = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>
-		-->
-    </object-type>
-
-  <object-type name="QAbstractTableModel">
-<!--  <modify-function signature="parent(const QModelIndex &amp;)const" remove="all"/>
-  <modify-function signature="hasChildren(const QModelIndex &amp;)const" remove="all"/> -->
-    <extra-includes>
-        <include file-name="QStringList" location="global"/>
-        <include file-name="QSize" location="global"/>
-    </extra-includes>
-  </object-type>
-
-  <object-type name="QGuiSignalMapper">
-        <modify-function signature="setMapping(QObject*,QWidget*)">
-            <modify-argument index="1">
-                <reference-count action="add" declare-variable="qt.core.QSignalMapper" variable-name="__rcMappings"/>
-            </modify-argument>
-            <inject-code class="java" position="end">
-                <argument-map index="1" meta-name="%1"/>
-                <argument-map index="2" meta-name="%2"/>
-                java.util.Hashtable&lt;qt.core.QObject, Object&gt; __rcWidgetForObject = (java.util.Hashtable&lt;qt.core.QObject, Object&gt;) qt.GeneratorUtilities.fetchField(this, qt.core.QSignalMapper.class, "__rcWidgetForObject");
-                if (%2 == null)
-                    __rcWidgetForObject.remove(%1);
-                else
-                    __rcWidgetForObject.put(%1,%2);
-            </inject-code>
-        </modify-function>
-    </object-type>
-
-  <object-type name="QComboBox">
-<!--    <modify-function signature="initStyleOption(QStyleOptionComboBox*)const">
-        <access modifier="private"/>
-    </modify-function>-->
-    <modify-function signature="setCompleter(QCompleter*)">
-        <modify-argument index="1">
-            <reference-count variable-name="__rcCompleter" action="set"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setValidator(const QValidator*)">
-        <modify-argument index="1">
-            <reference-count variable-name="__rcValidator" action="set"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setItemDelegate(QAbstractItemDelegate *)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-            <no-null-pointer/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setView(QAbstractItemView *)">
-        <modify-argument index="1">
-            <no-null-pointer/>
-            <!-- Safe to ignore because combo box reparents view -->
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setLineEdit(QLineEdit *)">
-        <modify-argument index="1">
-            <no-null-pointer/>
-            <!-- Safe to ignore because combo box reparents line edit -->
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setModel(QAbstractItemModel *)">
-        <modify-argument index="1">
-            <no-null-pointer/>
-            <reference-count action="set" variable-name="__rcModel"/>
-        </modify-argument>
-    </modify-function>
-<!--    <inject-code>
-        <insert-template name="gui.init_style_option">
-            <replace from="%TYPE" to="QStyleOptionComboBox"/>
-        </insert-template>
-    </inject-code>-->
-    <inject-code>
-        <import-file name="typesystem_gui-java.java" quote-after-line="class QComboBox___" quote-before-line="}// class"/>
-    </inject-code>
-    <modify-function signature="activated(int)">&gt;
-        <rename to="activatedIndex"/>
-    </modify-function>
-    <modify-function signature="currentIndexChanged(const QString &amp;)">
-        <rename to="currentStringChanged"/>
-    </modify-function>
-    <modify-function signature="highlighted(int)">
-        <rename to="highlightedIndex"/>
-    </modify-function>
-
-      <modify-function signature="autoCompletion()const" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="autoCompletionCaseSensitivity()const" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="setAutoCompletion(bool)" remove="all"/> <!--### Obsolete in 4.3-->
-      <modify-function signature="setAutoCompletionCaseSensitivity(Qt::CaseSensitivity)" remove="all"/> <!--### Obsolete in 4.3-->
-  </object-type>
-
-  <object-type name="QTextEdit">
-    <extra-includes>
-        <include file-name="QTextCursor" location="global"/>
-    </extra-includes>
-    <modify-function signature="setDocument(QTextDocument*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcDocument"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertFromMimeData(const QMimeData*)    ">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-
-  <object-type name="QPrinter" delete-in-main-thread="yes">
-  
-  
-    <modify-function signature="setEngines(QPrintEngine*,QPaintEngine*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcPrintEngine"/>
-        </modify-argument>
-        <modify-argument index="2">
-            <reference-count action="set" variable-name="__rcPaintEngine"/>
-        </modify-argument>
-    </modify-function>
-  
-        <modify-function signature="getPageMargins(double*,double*,double*,double*,QPrinter::Unit)const" access="private"/>
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QPrinter___" quote-before-line="}// class"/>
-        </inject-code>
-    </object-type>
-
-  <object-type name="QAction">
-      <modify-function signature="setMenu(QMenu*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcMenu"/>
-        </modify-argument>
-    </modify-function>
-
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QAction___" quote-before-line="}// class"/>
-        </inject-code>
-<!--
-        <modify-function signature="setActionGroup(QActionGroup*)">
-            <modify-argument index="1">
-                <reference-count action="ignore"/>
-            </modify-argument>
-            <inject-code position="end">
-                <argument-map index="1" meta-name="%1"/>
-            java.util.Collection&lt;Object&gt; __rcTmp = null;
-            if (__rcActionGroup != null) {
-                __rcTmp = (java.util.Collection&lt;Object&gt;)qt.GeneratorUtilities.fetchField(__rcActionGroup, QActionGroup.class, "__rcActions");
-                while (__rcTmp.contains(this))
-                    __rcTmp.remove(this);
-            }
-            __rcActionGroup = %1;
-            if (__rcActionGroup != null) {
-                __rcTmp = (java.util.Collection&lt;Object&gt;)qt.GeneratorUtilities.fetchField(__rcActionGroup, QActionGroup.class, "__rcActions");
-                __rcTmp.add(this);
-            }
-            </inject-code>
-        </modify-function>
-		-->
-    </object-type>
-
-  <object-type name="QPainter">
-<!--  <add-class name="QPaintEngineState"/> -->
-    <extra-includes>
-      <include file-name="QWidget" location="global"/>
-      <include file-name="QPainterPath" location="global"/>
-      <include file-name="QPixmap" location="global"/>
-	  <include file-name="qt.gui.QGradient" location="java"/>
-    </extra-includes>
-
-    <modify-function signature="drawText(const QPointF &amp;, const QString &amp;, int, int)" remove="all"/>
-
-    <modify-function signature="drawConvexPolygon(const QPoint *, int)">
-      <access modifier="private"/>
-    </modify-function>
-    <modify-function signature="drawConvexPolygon(const QPointF *, int)">
-      <access modifier="private"/>
-    </modify-function>
-    <modify-function signature="drawLines(const QLine *, int)">
-        <access modifier="private"/>
-    </modify-function>
-    <modify-function signature="drawLines(const QLineF *, int)">
-        <access modifier="private"/>
-    </modify-function>
-
-    <modify-function signature="drawPoints(const QPoint *, int)">
-        <access modifier="private"/>
-    </modify-function>
-    <modify-function signature="drawPoints(const QPointF *, int)">
-        <access modifier="private"/>
-    </modify-function>
-    
-    <modify-function signature="drawPolygon(const QPoint *, int, Qt::FillRule)">
-        <access modifier="private"/>
-    </modify-function>
-    <modify-function signature="drawPolygon(const QPointF *, int, Qt::FillRule)">
-        <access modifier="private"/>
-    </modify-function>
-
-    <modify-function signature="drawPolyline(const QPoint *, int)">
-        <access modifier="private"/>
-    </modify-function>
-    <modify-function signature="drawPolyline(const QPointF *, int)">
-        <access modifier="private"/>
-    </modify-function>
-    
-    <modify-function signature="drawRects(const QRect *, int)">
-        <access modifier="private"/>
-    </modify-function>
-    <modify-function signature="drawRects(const QRectF *, int)">
-        <access modifier="private"/>
-    </modify-function>
-    
-    <!-- removed stuff -->
-    <modify-function signature="drawRects(const QVector&lt;QRect&gt; &amp;)">
-        <remove/>
-    </modify-function>
-    <modify-function signature="drawRects(const QVector&lt;QRectF&gt; &amp;)">
-        <remove/>
-    </modify-function>
-
-    <modify-function signature="drawLines(const QVector&lt;QLine&gt; &amp;)">
-        <remove/>
-    </modify-function>
-    <modify-function signature="drawLines(const QVector&lt;QLineF&gt; &amp;)">
-        <remove/>
-    </modify-function>
-
-    <modify-function signature="drawLines(const QVector&lt;QPoint&gt; &amp;)">
-        <remove/>
-    </modify-function>
-    <modify-function signature="drawLines(const QVector&lt;QPointF&gt; &amp;)">
-        <remove/>
-    </modify-function>
-
-    <modify-function signature="drawLines(const QPoint *, int)">
-        <remove/>
-    </modify-function>
-    <modify-function signature="drawLines(const QPointF *, int)">
-        <remove/>
-    </modify-function>
-
-
-    <modify-function signature="QPainter(QPaintDevice *)">
-        <modify-argument index="1">
-            <no-null-pointer/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="begin(QPaintDevice *)">
-        <modify-argument index="1">
-            <no-null-pointer/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="initFrom(const QWidget *)">
-        <modify-argument index="1">
-            <no-null-pointer/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setRedirected(const QPaintDevice *, QPaintDevice *, const QPoint &amp;)">
-        <modify-argument index="1">
-            <no-null-pointer/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="restoreRedirected(const QPaintDevice *)">
-        <modify-argument index="1">
-            <no-null-pointer/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="drawText(QRect,int,QString,QRect*)">
-        <access modifier="private"/>
-        <modify-argument index="4">
-            <remove-default-expression/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="drawText(QRectF,int,QString,QRectF*)">
-        <access modifier="private"/>
-        <modify-argument index="4">
-            <remove-default-expression/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="drawText(int,int,int,int,int,QString,QRect*)">
-        <access modifier="private"/>
-        <modify-argument index="7">
-            <remove-default-expression/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="redirected(const QPaintDevice*,QPoint*)">
-        <access modifier="private"/>
-        <modify-argument index="2">
-            <remove-default-expression/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="matrix()const" remove="all"/> <!--### Obsolete in 4.3-->
-    <modify-function signature="matrixEnabled()const" remove="all"/> <!--### Obsolete in 4.3-->
-    <modify-function signature="setMatrix(QMatrix, bool)" remove="all"/> <!--### Obsolete in 4.3-->
-    <modify-function signature="setMatrixEnabled(bool)" remove="all"/> <!--### Obsolete in 4.3-->
-  
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QPainter___" quote-before-line="}// class"/>
-        </inject-code>
-<!--
-    <inject-code class="destructor-function">
-      if (((QPainter *) ptr)-&gt;isActive()) {
-          qWarning("QPainter: trying to delete an active painter, "
-                       "did you forget to call \"end()\"?\n");
-              return;
-          }
-        </inject-code>
-
-        <template name="gui.painter_draw_text_general">
-        public final void drawText(%RECT_ARGUMENTS, int flags, String text, %RECT_TYPE boundingRect) {
-            drawText(%RECT_CALL_ARGUMENTS, flags, text, boundingRect == null ? null : boundingRect.nativePointer());
-        }
-
-        public final void drawText(%RECT_ARGUMENTS, int flags, String text) {
-            drawText(%RECT_CALL_ARGUMENTS, flags, text, (%RECT_TYPE) null);
-        }
-        </template>
-
-        <template name="gui.painter_draw_text_qrect">
-            <insert-template name="gui.painter_draw_text_general">
-                <replace from="%RECT_ARGUMENTS" to="%RECT_TYPE rectangle"/>
-                <replace from="%RECT_CALL_ARGUMENTS" to="rectangle"/>
-            </insert-template>
-        </template>
-        <inject-code>
-            <insert-template name="gui.painter_draw_text_qrect">
-                <replace from="%RECT_TYPE" to="qt.core.QRect"/>
-            </insert-template>
-        </inject-code>
-        <inject-code>
-            <insert-template name="gui.painter_draw_text_qrect">
-                <replace from="%RECT_TYPE" to="qt.core.QRectF"/>
-            </insert-template>
-        </inject-code>
-        <inject-code>
-            <insert-template name="gui.painter_draw_text_general">
-                <replace from="%RECT_TYPE" to="qt.core.QRect"/>
-                <replace from="%RECT_ARGUMENTS" to="int x, int y, int width, int height"/>
-                <replace from="%RECT_CALL_ARGUMENTS" to="x, y, width, height"/>
-            </insert-template>
-        </inject-code>
-
-
-        <modify-function signature="setRedirected(const QPaintDevice*, QPaintDevice*, const QPoint &amp;)">
-            <modify-argument index="1">
-                <reference-count action="ignore"/>
-            </modify-argument>
-            <modify-argument index="2">
-                <reference-count action="ignore"/>
-            </modify-argument>
-            <inject-code position="end">
-                <argument-map index="1" meta-name="%1"/>
-                <argument-map index="2" meta-name="%2"/>
-            __rcRedirections.push(%1);
-            __rcRedirections.push(%2);
-            </inject-code>
-        </modify-function>
-        <modify-function signature="restoreRedirected(const QPaintDevice*)">
-            <inject-code position="end">
-            if (!__rcRedirections.empty()) __rcRedirections.pop();
-            if (!__rcRedirections.empty()) __rcRedirections.pop();
-            </inject-code>
-        </modify-function>
-		-->
-    </object-type>
-
-  <object-type name="QApplication">
-    <extra-includes>
-      <include file-name="QBasicTimer" location="global"/>
-      <include file-name="QFont" location="global"/>
-      <include file-name="QFontMetrics" location="global"/>
-      <include file-name="QPalette" location="global"/>
-      <include file-name="QIcon" location="global"/>
-      <include file-name="QLocale" location="global"/>
-
-      <include file-name="qt.qtd.Str" location="java"/>
-    </extra-includes>
-
-    <!-- qtd2 -->
-    <modify-function signature="inputContext() const" remove="all"/>
-    <modify-function signature="setStyle(QStyle*)" remove="all"/>
-    <modify-function signature="setStyle(const QString&amp;)" remove="all"/>
-    <modify-function signature="style()" remove="all"/>
-
-
-    <modify-function signature="QApplication(int &amp;, char  **, int)">
-        <access modifier="private"/>
-    </modify-function>
-    <modify-function signature="QApplication(int &amp;, char **, QApplication::Type, int)">
-        <remove/>
-    </modify-function>
-    <modify-function signature="QApplication(int &amp;, char **, bool, int)">
-        <remove/>
-    </modify-function>
-
-    <modify-function signature="font(const char*)">
-        <remove/>
-    </modify-function>
-    <modify-function signature="setFont(QFont,const char*)">
-        <access modifier="private"/>
-        <modify-argument index="2">
-            <remove-default-expression/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="palette(const char*)">
-        <remove/>
-    </modify-function>
-    <modify-function signature="setPalette(QPalette,const char*)">
-        <access modifier="private"/>
-        <modify-argument index="2">
-            <remove-default-expression/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="overrideCursor()">
-        <access modifier="private"/>
-        <rename to="overrideCursor_private"/>
-    </modify-function>
-
-    <modify-function signature="setInputContext(QInputContext*)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setActiveWindow(QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-<!--    <modify-function signature="setStyle(QStyle*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-  -->
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QApplication___" quote-before-line="}// class"/>
-        </inject-code>
-<!--        <modify-function signature="QApplication(int &amp;, char  **, int)">
-            <inject-code class="shell">
-                qtjambi_register_variant_handler();
-            </inject-code>
-        </modify-function>-->
-        <template name="gui.application_char_pointer_function">
-        public static %RETURN_TYPE %FUNCTION_NAME(%PRE_ARGUMENTS %COMMA QByteArray className) {
-            return %FUNCTION_NAME(%PRE_CALL_ARGUMENTS %COMMA className == null ? null : className.data());
-        }
-        </template>
-    </object-type>
-
-  <object-type name="QCommandLinkButton"/>
-  <object-type name="QFileSystemModel">
-    <modify-function signature="setIconProvider(QFileIconProvider*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcIconProvider"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-  <object-type name="QFormLayout">
-    <modify-function signature="addRow(QWidget*,QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-        <modify-argument index="2">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="addRow(QLayout*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="addRow(QWidget*,QLayout*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-        <modify-argument index="2">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="addRow(QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="addRow(QString,QLayout*)">
-        <modify-argument index="2">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="addRow(QString,QWidget*)">
-        <modify-argument index="2">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertRow(int,QLayout*)">
-        <modify-argument index="2">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertRow(int,QWidget*,QLayout*)">
-        <modify-argument index="2">
-            <reference-count action="ignore"/>
-        </modify-argument>
-        <modify-argument index="3">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertRow(int,QWidget*,QWidget*)">
-        <modify-argument index="2">
-            <reference-count action="ignore"/>
-        </modify-argument>
-        <modify-argument index="3">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertRow(int,QWidget*)">
-        <modify-argument index="2">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertRow(int,QString,QLayout*)">
-        <modify-argument index="3">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertRow(int,QString,QWidget*)">
-        <modify-argument index="3">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setLayout(int,QFormLayout::ItemRole,QLayout*)">
-        <modify-argument index="3">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setWidget(int,QFormLayout::ItemRole,QWidget*)">
-        <modify-argument index="3">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setItem(int,QFormLayout::ItemRole,QLayoutItem*)" access="private" rename="setItem_private">
-        <modify-argument index="3">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="addItem(QLayoutItem*)">
-        <modify-argument index="1">
-            <define-ownership class="java" owner="c++"/>
-        </modify-argument>
-    </modify-function>
-  
-        <modify-function signature="getLayoutPosition(QLayout*,int*,QFormLayout::ItemRole*)const" access="private"/>
-        <modify-function signature="getWidgetPosition(QWidget*,int*,QFormLayout::ItemRole*)const" access="private"/>
-        <modify-function signature="getItemPosition(int,int*,QFormLayout::ItemRole*)const" access="private"/>
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QFormLayout___" quote-before-line="}// class"/>
-        </inject-code>
-    </object-type>
-  <object-type name="QGraphicsGridLayout" delete-in-main-thread="yes">
-    <modify-function signature="addItem(QGraphicsLayoutItem*,int,int,QFlags&lt;Qt::AlignmentFlag&gt;)">
-        <modify-argument index="1">
-            <reference-count action="add" variable-name="__rcItems"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="addItem(QGraphicsLayoutItem*,int,int,int,int,QFlags&lt;Qt::AlignmentFlag&gt;)">
-        <modify-argument index="1">
-            <reference-count action="add" variable-name="__rcItems"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setAlignment(QGraphicsLayoutItem*,QFlags&lt;Qt::AlignmentFlag&gt;)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-  <object-type name="QGraphicsLayout" delete-in-main-thread="yes">
-
-    <modify-function signature="widgetEvent(QEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="setParentLayoutItem(QGraphicsLayoutItem*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcParentLayoutItem"/>
-        </modify-argument>
-    </modify-function>
-  
-       <!-- <modify-function signature="getContentsMargins(double*,double*,double*,double*)const" access="private"/> -->
-	<modify-function signature="getContentsMargins(double*,double*,double*,double*)const" remove="all"/>
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class Subclass_of_QGraphicsLayoutItem___" quote-before-line="}// class"/>
-        </inject-code>
-    </object-type>
-  <interface-type name="QGraphicsLayoutItem" delete-in-main-thread="yes">
-  	<modify-function signature="setExtension(QGraphicsItem::Extension,QVariant)" remove="all"/>
-	<modify-function signature="supportsExtension(QGraphicsItem::Extension)const" remove="all"/>
-	<modify-function signature="getContentsMargins(double*,double*,double*,double*)const" remove="all"/>
-  <!--
-    <modify-function signature="setParentLayoutItem(QGraphicsLayoutItem*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcParentLayoutItem"/>
-        </modify-argument>
-    </modify-function>
-  
-        <modify-function signature="getContentsMargins(double*,double*,double*,double*)const" access="private"/>
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class Subclass_of_QGraphicsLayoutItem___" quote-before-line="}// class"/>
-        </inject-code>
-        <inject-code class="interface">
-            public QMarginsF getContentsMargins();
-        </inject-code>  
-    -->
-    </interface-type>
- 
-  <object-type name="QGraphicsLinearLayout" delete-in-main-thread="yes">
-    <modify-function signature="addItem(QGraphicsLayoutItem*)">
-        <modify-argument index="1">
-            <reference-count action="add" variable-name="__rcItems"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertItem(int,QGraphicsLayoutItem*)">
-        <modify-argument index="2">
-            <reference-count action="add" variable-name="__rcItems"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="removeItem(QGraphicsLayoutItem*)">
-        <modify-argument index="1">
-            <reference-count action="remove" variable-name="__rcItems"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setAlignment(QGraphicsLayoutItem*,QFlags&lt;Qt::AlignmentFlag&gt;)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setStretchFactor(QGraphicsLayoutItem*,int)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-  <object-type name="QGraphicsProxyWidget">
-    <modify-function signature="getContentsMargins(double*,double*,double*,double*)const" remove="all" />  
-    <!--
-    <modify-function signature="setWidget(QWidget*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-        <inject-code>
-            <argument-map index="1" meta-name="%1"/>
-            if (%1 != null)
-                %1.disableGarbageCollection();
-            else if (widget() != null)
-                widget().reenableGarbageCollection();
-        </inject-code>
-    </modify-function>
-    -->
-    </object-type> <!-- a QObject so main-thread delete redundant -->
-  <object-type name="QGraphicsWidget">  <!-- a QObject so main-thread delete redundant -->
-    <!-- Duplicate function to QObject::children() to override accidental shadowing which is not present in Jambi -->
-    <modify-function signature="children()const" remove="all"/>
-    <modify-function signature="setLayout(QGraphicsLayout*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcLayout"/>
-        </modify-argument>
-    </modify-function>
-
-    <modify-function signature="changeEvent(QEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="closeEvent(QCloseEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="grabKeyboardEvent(QEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="grabMouseEvent(QEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="hideEvent(QHideEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="moveEvent(QGraphicsSceneMoveEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="paintWindowFrame(QPainter*,const QStyleOptionGraphicsItem*,QWidget*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="resizeEvent(QGraphicsSceneResizeEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="showEvent(QShowEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="ungrabKeyboardEvent(QEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="ungrabMouseEvent(QEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-    <modify-function signature="windowFrameEvent(QEvent*)">
-        <modify-argument index="1" invalidate-after-use="yes"/>
-    </modify-function>
-
-    <modify-function signature="setStyle(QStyle*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcStyle"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setTabOrder(QGraphicsWidget*,QGraphicsWidget*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-        <modify-argument index="2">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-  <!--
-        <modify-function signature="getContentsMargins(double*,double*,double*,double*)const" access="private"/>
-        <modify-function signature="getWindowFrameMargins(double*,double*,double*,double*)const" access="private"/>
-   
-        <inject-code>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class QGraphicsWidget___" quote-before-line="}// class"/>
-            <import-file name="typesystem_gui-java.java" quote-after-line="class Subclass_of_QGraphicsLayoutItem___" quote-before-line="}// class"/>
-        </inject-code>
-    -->
-        <modify-function signature="initStyleOption(QStyleOption*)const">
-	    <!--
-            <modify-argument index="1">
-                <replace-type modified-type="qt.gui.QStyleOption"/>
-                <conversion-rule class="shell">
-                    jobject %out = qtjambi_from_object(__jni_env, %in, "QStyleOption", "com/trolltech/qt/gui/", "Lcom_trolltech_qt_gui_QStyleOption_2", false);
-                    jobject __tmp = %out;
-                </conversion-rule>
-                <conversion-rule class="native">
-                    QStyleOption *%out = (QStyleOption *) qtjambi_to_object(__jni_env, %in);
-                </conversion-rule>
-            </modify-argument>
-            <modify-argument index="return">
-                <conversion-rule class="shell">
-                    // Make sure the java object is not usable after this, since
-                    // the QStyleOption* may be deleted at any time.
-                    qtjambi_invalidate_object(__jni_env, __tmp);
-                    __tmp = 0;
-                </conversion-rule>
-            </modify-argument>
-	    -->
-        </modify-function>
-
-        <modify-function signature="paintWindowFrame(QPainter*,const QStyleOptionGraphicsItem*,QWidget*)">
-	<!--
-            <modify-argument index="2">
-                <conversion-rule class="shell">
-                    jobject %out = qtjambi_from_object(__jni_env, %in, "QStyleOptionGraphicsItem", "com/trolltech/qt/gui/", "Lcom_trolltech_qt_gui_QStyleOption_2", true);
-                </conversion-rule>
-                <conversion-rule class="native">
-                    const QStyleOptionGraphicsItem *%out = (QStyleOptionGraphicsItem *) qtjambi_to_object(__jni_env, %in);
-                </conversion-rule>
-                <replace-type modified-type="qt.gui.QStyleOptionGraphicsItem"/>
-            </modify-argument>
-	 -->
-        </modify-function>
-
-    </object-type>
-  <object-type name="QPlainTextDocumentLayout"/>
-  <object-type name="QPlainTextEdit">
-    <modify-function signature="setDocument(QTextDocument*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcDocument"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="insertFromMimeData(const QMimeData*)">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-  </object-type>
-  <object-type name="QPrintPreviewDialog">
-        <modify-function signature="open(QObject *, const char *)" remove="all"/> <!-- # TODO -->
-  </object-type>
-  <object-type name="QPrintPreviewWidget"/>
-  <object-type name="QStyledItemDelegate">
-    <modify-function signature="setItemEditorFactory(QItemEditorFactory*)">
-        <modify-argument index="1">
-            <reference-count action="set" variable-name="__rcItemEditorFactory"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setEditorData(QWidget*,QModelIndex)const">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-    <modify-function signature="setModelData(QWidget*,QAbstractItemModel*,QModelIndex)const">
-        <modify-argument index="1">
-            <reference-count action="ignore"/>
-        </modify-argument>
-    </modify-function>
-<!--  
-        <modify-function signature="initStyleOption(QStyleOptionViewItem*,QModelIndex)const">
-            <modify-argument index="1">
-                <conversion-rule class="shell">
-                    jobject %out = qtjambi_from_object(__jni_env, %in, "QStyleOptionViewItem", "com/trolltech/qt/gui/", "Lcom_trolltech_qt_gui_QStyleOption_2", false);
-                </conversion-rule>
-                <conversion-rule class="native">
-                    QStyleOptionViewItem *%out = (QStyleOptionViewItem *) qtjambi_to_object(__jni_env, %in);
-                </conversion-rule>
-                <replace-type modified-type="qt.gui.QStyleOptionViewItem"/>
-            </modify-argument>
-        </modify-function>
-        -->
-    </object-type>
-
-  <interface-type name="QAccessibleFactoryInterface" java-name="QAbstractAccessibleFactory"/>
-  <interface-type name="QIconEngineFactoryInterfaceV2" java-name="QAbstractIconEngineFactoryV2"/>
-  <interface-type name="QImageIOHandlerFactoryInterface" java-name="QAbstractImageIOHandlerFactory"/>
-  <interface-type name="QInputContextFactoryInterface" java-name="QAbstractInputContextFactory"/>
-  <interface-type name="QStyleFactoryInterface" java-name="QAbstractStyleFactory"/>
-  <interface-type name="QTextCodecFactoryInterface" java-name="QAbstractTextCodecFactory"/>
-  <interface-type name="QPictureFormatInterface" java-name="QAbstractPictureFormat">
-<!--        <modify-function signature="loadPicture(QString,QString,QPicture*)">
-            <modify-argument index="3">
-                <replace-type modified-type="QPicture"/>
-                <conversion-rule class="shell">
-                    jobject %out = qtjambi_from_object(__jni_env, %in, "QPicture", "com/trolltech/qt/gui/", false);
-                    jobject __tmp = %out;
-                </conversion-rule>
-                <conversion-rule class="native">
-                    QPicture *%out = (QPicture *) qtjambi_to_object(__jni_env, %in);
-                </conversion-rule>
-            </modify-argument>
-            <modify-argument index="return">
-                <conversion-rule class="shell">
-                    // Make sure the java object is not usable after this, since
-                    // the QPicture* may be deleted at any time.
-                    qtjambi_invalidate_object(__jni_env, __tmp);
-                    __tmp = 0;
-                    bool %out = (bool) %in;
-                </conversion-rule>
-                <conversion-rule class="native">
-                    jboolean %out = (jboolean) %in;
-                </conversion-rule>
-            </modify-argument>
-        </modify-function>-->
-    </interface-type>
-
-  <object-type name="QIconEnginePluginV2"/>
-  <object-type name="QAccessiblePlugin"/>
-  <object-type name="QImageIOPlugin"/>
-  <object-type name="QInputContextPlugin"/>
-  <object-type name="QPictureFormatPlugin"/>
-  <object-type name="QStylePlugin"/>
-  <object-type name="QTextCodecPlugin"/>
-
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping function 'QPixmap::QPixmap', unmatched parameter type 'QPixmapData*'"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping * unmatched *type '*Private&amp;'"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping * unmatched *type '*Private\*'"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping * unmatched *type '*Private const\*'"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping * unmatched *type 'QTextEngine\*'"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping * unmatched *type 'QFontEngine\*'"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping * unmatched *type 'QPixmap::Type'"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping * unmatched *type 'QInputDialog::Type'"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping * unmatched *type 'QTextFrameLayoutData\*'"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping * unmatched *type 'QAbstractUndoItem\*'"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping * unmatched *type '*QImageTextKeyLang*'"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: non-public function '*' in interface '*'"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: visibility of function '*' modified in class '*'"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: hiding of function '*' in class '*'"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: unsupported default value 'QVector&lt;FormatRange&gt;()' of argument in function '*', class '*'"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: unsupported default value 'QVariantList()' of argument in function '*', class '*'"/>
-  <suppress-warning text="WARNING(CppImplGenerator) :: protected function '*' in final class '*'"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping function 'QTextLayout::QTextLayout', unmatched parameter type 'QTextEngine*'"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: unsupported default value of argument in function 'doAction', class 'QAccessibleInterface'"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping function 'QFileDialog::QFileDialog', unmatched parameter type 'QFileDialogArgs const&amp;'"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: unsupported default value '0., 0., 1000000000., 1000000000.' of argument in function 'update', class 'QAbstractTextDocumentLayout'"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping function 'QWidget::windowSurface', unmatched return type 'QWindowSurface*'"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping function 'QWidget::setWindowSurface', unmatched parameter type 'QWindowSurface*'"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: enum 'QStyleOption::StyleOptionType' does not have a type entry or is not an enum"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: unhandled enum value: ~FlagMask in QMessageBox::StandardButton"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: unmatched enum ~FlagMask"/>
-  <suppress-warning text="WARNING(MetaInfoGenerator) :: class 'QGraphicsSceneEvent' inherits from polymorphic class 'QEvent', but has no polymorphic id set"/>
-  <suppress-warning text="WARNING(MetaInfoGenerator) :: class 'QInputEvent' inherits from polymorphic class 'QEvent', but has no polymorphic id set"/>
-  <suppress-warning text="WARNING(JavaGenerator) :: either add or remove specified for reference count variable '__rcMenus' in 'qt.gui.QMenu' but not both"/>
-  <suppress-warning text="WARNING(JavaGenerator) :: either add or remove specified for reference count variable '__rcMenus' in 'qt.gui.QMenuBar' but not both"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QBrush' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QTextFrame_iterator' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QRegion' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QPolygon' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QTextTableCell' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QTextLength' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QPalette' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QTextBlock_iterator' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QTextBlock' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QTextCursor' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QFont' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QMatrix' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QPen' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QColor' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QTransform' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QPainterPath_Element' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QPainterPath' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QItemSelection' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QKeySequence' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QLine' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QPolygonF' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QSizePolicy' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QTextFragment' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QFontMetrics' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QGradient' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QFontMetricsF' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QTextFormat' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QLineF' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QImage' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QNetworkCookie' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QNetworkRequest' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping function 'QPixmap::pixmapData', unmatched return type 'QPixmapData*'"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: object type 'QAccessible' extended by interface type 'QAbstractAccessibleFactory'. The resulting API will be less expressive than the original."/>
-
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QTextOption_Tab' has equals operators but no qHash() function"/>
-  <suppress-warning text="WARNING(MetaJavaBuilder) :: Rejected enum has no alternative...: QPalette::NColorRoles"/>
-
-</typesystem>
+<?xml version="1.0" encoding="UTF-8"?>
+<typesystem package="qt.gui" default-superclass="QtDObject">
+<depend package="qt.core" />
+<inject-code>
+        qt.Utilities.loadQtLibrary("QtGui");
+</inject-code>
+
+<template name="gui.class_from_variant_java">
+    public this(QVariant arg__1) {
+        void* __qt_return_value = qtd_%CLASS_NAME_%CLASS_NAME_QVariant(cast(void*) this, arg__1 is null ? null : arg__1.nativeId);
+        super(__qt_return_value);
+    }
+</template>
+
+<template name="gui.class_from_variant_java_free">
+private extern (C) void* qtd_%CLASS_NAME_%CLASS_NAME_QVariant(void *d_ptr,
+ void* arg__1);
+</template>
+
+<template name="gui.class_from_variant_native">
+// %CLASS_NAME from QVariant
+extern "C" DLL_PUBLIC void* qtd_%CLASS_NAME_%CLASS_NAME_QVariant
+(void *d_ptr,
+ void* arg__1)
+{
+    const QVariant&amp;  __qt_arg__1 = (const QVariant&amp; ) *(QVariant *)arg__1;
+    %CLASS_NAME __qt_casted = qvariant_cast&lt;%CLASS_NAME&gt;(__qt_arg__1);
+    %CLASS_NAME *__qt_this = new %CLASS_NAME((const %CLASS_NAME&amp; )__qt_casted);
+    return (void *) __qt_this;
+}
+</template>
+
+<template name="gui.class_from_variant_native_shell">
+// %CLASS_NAME from QVariant
+extern "C" DLL_PUBLIC void* qtd_%CLASS_NAME_%CLASS_NAME_QVariant
+(void *d_ptr,
+ void* arg__1)
+{
+    const QVariant&amp;  __qt_arg__1 = (const QVariant&amp; ) *(QVariant *)arg__1;
+    %CLASS_NAME __qt_casted = qvariant_cast&lt;%CLASS_NAME&gt;(__qt_arg__1);
+    %CLASS_NAME_QtDShell *__qt_this = new %CLASS_NAME_QtDShell(d_ptr, (const %CLASS_NAME&amp; )__qt_casted);
+    return (void *) __qt_this;
+}
+</template>
+<!-- without shell
+    <inject-code class="java">
+        <insert-template name="gui.class_from_variant_java">
+            <replace from="%CLASS_NAME" to=""/>
+        </insert-template>
+    </inject-code>   
+    <inject-code class="java-free">
+        <insert-template name="gui.class_from_variant_java_free">
+            <replace from="%CLASS_NAME" to=""/>
+        </insert-template>
+    </inject-code>
+    <inject-code class="native">
+        <insert-template name="gui.class_from_variant_native">
+            <replace from="%CLASS_NAME" to=""/>
+        </insert-template>
+    </inject-code>
+    
+  with shell
+    <inject-code class="java">
+        <insert-template name="gui.class_from_variant_java">
+            <replace from="%CLASS_NAME" to=""/>
+        </insert-template>
+    </inject-code>   
+    <inject-code class="java-free">
+        <insert-template name="gui.class_from_variant_java_free">
+            <replace from="%CLASS_NAME" to=""/>
+        </insert-template>
+    </inject-code>
+    <inject-code class="native">
+        <insert-template name="gui.class_from_variant_native_shell">
+            <replace from="%CLASS_NAME" to=""/>
+        </insert-template>
+    </inject-code>
+-->
+
+        
+<template name="gui.getter_returning_nativepointer">
+        public final %RETURN_TYPE %FUNCTION_NAME() {
+            QNativePointer np = %FUNCTION_NAME_private();
+            %RETURN_TYPE tmp = np == null ? null : %RETURN_TYPE.fromNativePointer(np);
+            return tmp == null ? null : new %RETURN_TYPE(tmp);
+        }
+
+    </template>
+<template name="gui.init_style_option">
+        protected final void initStyleOption(%TYPE option) {
+            initStyleOption(option.nativePointer());
+        }
+    </template>
+<template name="gui.convert_validationdata_to_java">
+        StaticCache *sc = StaticCache::instance();
+        sc-&gt;resolveValidationData();
+        jstring __qt_converted_input = qtjambi_from_qstring(__jni_env, %STRING);
+        jobject %out = __jni_env-&gt;NewObject(sc-&gt;ValidationData.class_ref, sc-&gt;ValidationData.constructor, __qt_converted_input, %POS);
+        jobject __java_validation_data = %out;
+    </template>
+<template name="gui.cleanup_validationdata_from_java">
+        __jni_env-&gt;SetIntField(%1, sc-&gt;ValidationData.position, *__position_ptr);
+        __jni_env-&gt;SetObjectField(%1, sc-&gt;ValidationData.string, qtjambi_from_qstring(__jni_env, *__string_ptr));
+    </template>
+<template name="gui.convert_validationdata_to_string">
+        StaticCache *sc = StaticCache::instance();
+        sc-&gt;resolveValidationData();
+        jstring __java_string = (jstring) __jni_env-&gt;GetObjectField(%in, sc-&gt;ValidationData.string);
+        QString %out = __java_string == 0 ? QString() : qtjambi_to_qstring(__jni_env, __java_string);
+        QString *__string_ptr = &amp;%out;
+    </template>
+<template name="gui.convert_validationdata_to_pos">
+        int %out = __jni_env-&gt;GetIntField(%1, sc-&gt;ValidationData.position);
+        int *__position_ptr = &amp;%out;
+    </template>
+<template name="gui.cleanup_validationdata_to_java">
+        jstring __java_string = (jstring) __jni_env-&gt;GetObjectField(__java_validation_data, sc-&gt;ValidationData.string);
+        %STRING = __java_string == 0 ? QString() : qtjambi_to_qstring(__jni_env, __java_string);
+        %POS = __jni_env-&gt;GetIntField(__java_validation_data, sc-&gt;ValidationData.position);
+    </template>
+<template name="gui.convert_object_array_to_java">
+        jobjectArray %out = 0;
+
+        {
+            jclass __resolved_class = resolveClass(__jni_env, "%CLASSNAME_ARRAY", "%PACKAGE_ARRAY");
+            QTJAMBI_EXCEPTION_CHECK(__jni_env);
+            Q_ASSERT(__resolved_class != 0);
+
+            %out = %in == 0 ? 0 : __jni_env-&gt;NewObjectArray(%LENGTH, __resolved_class, 0);
+            QTJAMBI_EXCEPTION_CHECK(__jni_env);
+            if (%out != 0) {
+                for (int i=0; i&lt;%LENGTH; ++i) {
+                    __jni_env-&gt;SetObjectArrayElement(%out, i, qtjambi_from_object(__jni_env, %REFERENCE %in[i], "%CLASSNAME", "%PACKAGE", %LOOKUP true));
+                }
+            }
+       }
+    </template>
+<template name="gui.convert_graphicsitem_array_to_java">
+        <insert-template name="gui.convert_object_array_to_java">
+            <replace from="%CLASSNAME_ARRAY" to="QGraphicsItemInterface"/>
+            <replace from="%PACKAGE_ARRAY" to="com/trolltech/qt/gui/"/>
+            <replace from="%CLASSNAME" to="QGraphicsItem$ConcreteWrapper"/>
+            <replace from="%PACKAGE" to="com/trolltech/qt/gui/"/>
+            <replace from="%LOOKUP" to=""/>
+            <replace from="%REFERENCE" to=""/>
+        </insert-template>
+    </template>
+<template name="gui.convert_styleoptiongraphicsitem_array_to_java">
+        <insert-template name="gui.convert_object_array_to_java">
+            <replace from="%CLASSNAME_ARRAY" to="QStyleOptionGraphicsItem"/>
+            <replace from="%PACKAGE_ARRAY" to="com/trolltech/qt/gui/"/>
+            <replace from="%CLASSNAME" to="QStyleOptionGraphicsItem"/>
+            <replace from="%PACKAGE" to="com/trolltech/qt/gui/"/>
+            <replace from="%LOOKUP" to="&quot;Lcom_trolltech_qt_gui_QStyleOption_2&quot;,"/>
+            <replace from="%REFERENCE" to="&amp;"/>
+        </insert-template>
+    </template>
+<template name="gui.convert_interface_array_from_java">
+        %CLASSNAME *%out = 0;
+        QVarLengthArray&lt;%CLASSNAME, 256&gt; __interfaceArray(__length);
+        if (%in != 0) {
+            for (int i=0; i&lt;__length; ++i) {
+                __interfaceArray[i] = (%CLASSNAME) %CONVERSION_FUNCTION(__jni_env, __jni_env-&gt;GetObjectArrayElement((jobjectArray) %in, i) %EXTRA);
+            }
+        }
+        %out = %in == 0 ? 0 : __interfaceArray.data();
+    </template>
+<template name="gui.convert_object_array_from_java">
+        %CLASSNAME *%out = 0;
+        QVarLengthArray&lt;%CLASSNAME, 256&gt; __array(__length);
+        if (%in != 0) {
+            for (int i=0; i&lt;__length; ++i) {
+                __array[i] = *(%CLASSNAME *) %CONVERSION_FUNCTION(__jni_env, __jni_env-&gt;GetObjectArrayElement((jobjectArray) %in, i) %EXTRA);
+            }
+        }
+        %out = %in == 0 ? 0 : __array.data();
+    </template>
+<template name="gui.convert_graphicsitem_array_from_java">
+        <insert-template name="gui.convert_interface_array_from_java">
+            <replace from="%CLASSNAME" to="QGraphicsItem *"/>
+            <replace from="%EXTRA" to=", &quot;QGraphicsItemInterface&quot;, &quot;com/trolltech/qt/gui/&quot;, &quot;__qt_cast_to_QGraphicsItem&quot;"/>
+            <replace from="%CONVERSION_FUNCTION" to="qtjambi_to_interface"/>
+        </insert-template>
+    </template>
+<template name="gui.convert_styleoptiongraphicsitem_array_from_java">
+        <insert-template name="gui.convert_object_array_from_java">
+            <replace from="%CLASSNAME" to="QStyleOptionGraphicsItem"/>
+            <replace from="%EXTRA" to=""/>
+            <replace from="%CONVERSION_FUNCTION" to="qtjambi_to_object"/>
+        </insert-template>
+    </template>
+<template name="gui::qstyleoption_from_object">
+        jobject %out = qtjambi_from_object(__jni_env, %in, "QStyleOption", "com/trolltech/qt/gui/", "Lcom_trolltech_qt_gui_QStyleOption_2", true);
+    </template>
+<template name="gui::qstyleoptioncomplex_from_object">
+        jobject %out = qtjambi_from_object(__jni_env, %in, "QStyleOptionComplex", "com/trolltech/qt/gui/", "Lcom_trolltech_qt_gui_QStyleOption_2", true);
+    </template>
+<template name="gui::qstyleoption_to_object">
+        QStyleOption *%out = (QStyleOption *) qtjambi_to_object(__jni_env, %in);
+    </template>
+<template name="gui.inputDialog_get_input">
+    public static %RETURN_TYPE %FUNCTION_NAME(qt.gui.QWidget parent, java.lang.String title, java.lang.String label, %EXTRA, qt.core.Qt.WindowFlags f) {
+        qt.QNativePointer ok = new qt.QNativePointer(qt.QNativePointer.Type.Boolean);
+        %RETURN_TYPE result = %FUNCTION_NAME_internal(parent, title, label, %CALL, ok, f);
+        return ok.booleanValue() ? result : null;
+    }
+
+    public static %RETURN_TYPE %FUNCTION_NAME(qt.gui.QWidget parent, java.lang.String title, java.lang.String label, %EXTRA, qt.core.Qt.WindowType ... f) {
+        qt.QNativePointer ok = new qt.QNativePointer(qt.QNativePointer.Type.Boolean);
+        %RETURN_TYPE result = %FUNCTION_NAME_internal(parent, title, label, %CALL, ok, f);
+        return ok.booleanValue() ? result : null;
+    }
+
+    public static %RETURN_TYPE %FUNCTION_NAME(qt.gui.QWidget parent, java.lang.String title, java.lang.String label, %EXTRA) {
+        return %FUNCTION_NAME(parent, title, label, %CALL, qt.core.Qt.WindowType.Widget);
+    }
+
+    </template>
+<suppress-warning text="WARNING(JavaGenerator) :: either add or remove specified for reference count variable '__rcItems' in 'qt.gui.QGraphicsGridLayout' but not both"/>
+
+  <rejection class="*" function-name="d_func"/>
+
+  <rejection class="*" field-name="d_ptr"/>
+  <rejection class="*" field-name="d"/>
+  
+  <rejection class="QAccessibleTableInterface"/>
+  
+  <rejection class="QWindowsCEStyle"/>
+  <rejection class="QWindowsMobileStyle"/>
+  <rejection class="QAbstractUndoItem"/>
+  <rejection class="QAccessibleApplication"/>
+  <rejection class="QBrushData"/>
+  <rejection class="QImageTextKeyLang"/>
+  <rejection class="QItemEditorCreator"/>
+  <rejection class="QLibrary"/>
+  <rejection class="QLinkedList"/>
+  <rejection class="QLinkedListData"/>
+  <rejection class="QLinkedListIterator"/>
+  <rejection class="QLinkedListNode"/>
+  <rejection class="QMimeSource"/>
+  <rejection class="QPainterPathPrivate"/>
+  <rejection class="QRegionData"/>
+  <rejection class="QStandardItemEditorCreator"/>
+  <rejection class="QStyleOptionQ3DockWindow"/>
+  <rejection class="QStyleOptionQ3ListView"/>
+  <rejection class="QStyleOptionQ3ListViewItem"/>
+  <rejection class="QTextFrameLayoutData"/>
+  <rejection class="QUpdateLaterEvent"/>
+  <rejection class="QVFbHeader"/>
+  <rejection class="QWidgetData"/>
+  <rejection class="QWindowSurface"/>
+  <rejection class="QWindowsXPStyle"/>
+  <rejection class="QWindowsVistaStyle"/>
+  <rejection class="QWSEmbedWidget"/>
+  <rejection class="QRegion::QRegionData"/>
+  <rejection class="JObject_key"/>
+  <rejection class="QAccessibleEditableTextInterface"/>
+  <rejection class="QAccessibleSimpleEditableTextInterface"/>
+  <rejection class="QAccessibleTextInterface"/>
+  <rejection class="QAccessibleValueInterface"/>
+  <rejection class="QIconEngineFactoryInterface"/>
+  <rejection class="QIconEnginePlugin"/>
+  <rejection class="QWidgetItemV2"/>
+  <rejection class="QAbstractItemDelegate" function-name="operator="/>
+  <rejection class="QAccessible" function-name="installFactory"/>
+  <rejection class="QAccessible" function-name="installRootObjectHandler"/>
+  <rejection class="QAccessible" function-name="installUpdateHandler"/>
+  <rejection class="QAccessible" function-name="removeFactory"/>
+  <rejection class="QApplication" function-name="compressEvent"/>
+  <rejection class="QBrush" function-name="cleanUp"/>
+  <rejection class="QPictureIO" function-name="defineIOHandler"/>
+  <rejection class="QPolygon" function-name="putPoints"/>
+  <rejection class="QPolygon" function-name="setPoints"/>
+  <rejection class="QPolygon" function-name="setPoint"/>
+  <rejection class="QPolygon" function-name="points"/>
+  <rejection class="QPolygon" function-name="point"/>
+  <rejection class="QPrinter" function-name="printerSelectionOption"/>
+  <rejection class="QPrinter" function-name="setPrinterSelectionOption"/>
+  <rejection class="QWidget" function-name="create"/>
+  <rejection class="QWidget" function-name="find"/>
+  <rejection class="QWidget" function-name="handle"/>
+  <rejection class="QWidget" function-name="styleChange"/>
+  <rejection class="QWidget" function-name="internalWinId"/>
+  <rejection class="QActionGroup" function-name="selected"/>
+  <rejection class="QPaintEngine" function-name="fix_neg_rect"/>
+  <rejection class="QTreeModel" function-name="node"/>
+  <rejection class="QTreeModel" function-name="initializeNode"/>
+  <rejection class="QTreeModel" function-name="queryChildren"/>
+  <rejection class="QAccessible" function-name="cast_helper"/>
+  <rejection class="QAccessible2"/>
+  <rejection class="QAccessibleInterface" function-name="backgroundColor"/>
+  <rejection class="QAccessibleInterface" function-name="foregroundColor"/>
+  <rejection class="QAccessibleInterface" function-name="textInterface"/>
+  <rejection class="QAccessibleInterface" function-name="valueInterface"/>
+  <rejection class="QAccessibleInterface" function-name="tableInterface"/>
+  <rejection class="QAccessibleInterface" function-name="editableTextInterface"/>
+  <rejection class="QAccessibleInterface" function-name="cast_helper"/>
+  <rejection class="QAccessibleInterfaceEx" function-name="interface_cast"/>
+  <rejection class="QAccessibleBridgePlugin"/>
+  <rejection class="QAccessibleBridgeFactoryInterface"/>
+  <rejection class="QTabletEvent" field-name="mExtra"/>
+  <rejection class="QWidgetItem" field-name="wid"/>
+  <rejection class="QFont" enum-name="ResolveProperties"/>
+
+  <enum-type name="QAbstractItemDelegate::EndEditHint"/>
+  <enum-type name="QAbstractItemView::CursorAction"/>
+  <enum-type name="QAbstractItemView::DragDropMode"/>
+  <enum-type name="QAbstractItemView::DropIndicatorPosition"/>
+  <enum-type name="QAbstractItemView::EditTrigger" flags="QAbstractItemView::EditTriggers"/>
+  <enum-type name="QAbstractItemView::ScrollHint"/>
+  <enum-type name="QAbstractItemView::ScrollMode"/>
+  <enum-type name="QAbstractItemView::SelectionBehavior"/>
+  <enum-type name="QAbstractItemView::SelectionMode"/>
+  <enum-type name="QAbstractItemView::State"/>
+  <enum-type name="QAbstractPrintDialog::PrintDialogOption" flags="QAbstractPrintDialog::PrintDialogOptions"/>
+  <enum-type name="QAbstractPrintDialog::PrintRange"/>
+  <enum-type name="QAbstractSlider::SliderAction"/>
+  <enum-type name="QAbstractSlider::SliderChange"/>
+  <enum-type name="QAbstractSpinBox::ButtonSymbols"/>
+  <enum-type name="QAbstractSpinBox::CorrectionMode"/>
+  <enum-type name="QAbstractSpinBox::StepEnabledFlag" flags="QAbstractSpinBox::StepEnabled"/>
+  <enum-type name="QAccessible::Event"/>
+  <enum-type name="QAccessible::Method"/>
+  <enum-type name="QAccessible::RelationFlag" flags="QAccessible::Relation"/>
+  <enum-type name="QAccessible::Role"/>
+  <enum-type name="QAccessible::StateFlag" flags="QAccessible::State"/>
+  <enum-type name="QAccessible::Text"/>
+  <enum-type name="QDesktopServices::StandardLocation"/>
+  <enum-type name="QDirModel::Roles"/>
+  <enum-type name="QFont::Capitalization"/>
+  <enum-type name="QFont::SpacingType"/>
+  <enum-type name="QGraphicsItem::CacheMode"/>
+  <enum-type name="QMdiArea::AreaOption" flags="QMdiArea::AreaOptions"/>
+  <enum-type name="QMdiArea::WindowOrder"/>
+  <enum-type name="QMdiArea::ViewMode"/>
+  <enum-type name="QFileSystemModel::Roles"/>
+  <enum-type name="QFormLayout::FieldGrowthPolicy"/>
+  <enum-type name="QFormLayout::FormStyle"/>
+  <enum-type name="QFormLayout::ItemRole"/>
+  <enum-type name="QFormLayout::RowWrapPolicy"/>
+  <enum-type name="QGraphicsProxyWidget::enum_1"/>
+  <enum-type name="QGraphicsWidget::enum_1"/>
+  <enum-type name="QPlainTextEdit::LineWrapMode"/>
+  <enum-type name="QPrintPreviewWidget::ViewMode"/>
+  <enum-type name="QPrintPreviewWidget::ZoomMode"/>
+  <enum-type name="QStyleOptionViewItemV4::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionViewItemV4::ViewItemPosition"/>
+
+  <enum-type name="QMdiSubWindow::SubWindowOption" flags="QMdiSubWindow::SubWindowOptions"/>
+
+  <enum-type name="QAction::ActionEvent"/>
+  <enum-type name="QAction::MenuRole"/>
+  <enum-type name="QApplication::ColorSpec"/>
+  <enum-type name="QApplication::Type"/>
+  <enum-type name="QCalendarWidget::HorizontalHeaderFormat"/>
+  <enum-type name="QCalendarWidget::SelectionMode"/>
+  <enum-type name="QCalendarWidget::VerticalHeaderFormat"/>
+  <enum-type name="QColor::Spec"/>
+  <enum-type name="QColormap::Mode"/>
+  <enum-type name="QComboBox::InsertPolicy"/>
+  <enum-type name="QComboBox::SizeAdjustPolicy"/>
+  <enum-type name="QCompleter::CompletionMode"/>
+  <enum-type name="QCompleter::ModelSorting"/>
+  <enum-type name="QContextMenuEvent::Reason"/>
+  <enum-type name="QDataWidgetMapper::SubmitPolicy"/>
+  <enum-type name="QDateTimeEdit::Section" flags="QDateTimeEdit::Sections"/>
+  <enum-type name="QDialog::DialogCode"/>
+  <enum-type name="QDialogButtonBox::ButtonLayout"/>
+  <enum-type name="QDialogButtonBox::ButtonRole"/>
+  <enum-type name="QFileDialog::AcceptMode"/>
+  <enum-type name="QFileDialog::DialogLabel"/>
+  <enum-type name="QFileDialog::FileMode"/>
+  <enum-type name="QFileDialog::Option" flags="QFileDialog::Options"/>
+  <enum-type name="QFileDialog::ViewMode"/>
+  <enum-type name="QFileIconProvider::IconType"/>
+  <enum-type name="QFont::Stretch"/>
+  <enum-type name="QFont::Style"/>
+  <enum-type name="QFont::StyleStrategy"/>
+  <enum-type name="QFont::Weight"/>
+  <enum-type name="QFontComboBox::FontFilter" flags="QFontComboBox::FontFilters"/>
+  <enum-type name="QFrame::Shadow" extensible="yes"/>
+  <enum-type name="QFrame::Shape"/>
+  <enum-type name="QFrame::StyleMask"/>
+  <enum-type name="QGradient::CoordinateMode"/>
+  <enum-type name="QGradient::Spread" lower-bound="QGradient.PadSpread" upper-bound="QGradient.RepeatSpread"/>
+  <enum-type name="QGradient::Type"/>
+  <enum-type name="QGraphicsEllipseItem::enum_1"/>
+  <enum-type name="QGraphicsItem::Extension"/>
+  <enum-type name="QGraphicsItem::GraphicsItemChange"/>
+  <enum-type name="QGraphicsItem::GraphicsItemFlag" flags="QGraphicsItem::GraphicsItemFlags"/>
+  <enum-type name="QGraphicsItem::enum_1"/>
+  <enum-type name="QGraphicsItemGroup::enum_1"/>
+  <enum-type name="QGraphicsLineItem::enum_1"/>
+  <enum-type name="QGraphicsPathItem::enum_1"/>
+  <enum-type name="QGraphicsPixmapItem::ShapeMode"/>
+  <enum-type name="QGraphicsPixmapItem::enum_1"/>
+  <enum-type name="QGraphicsPolygonItem::enum_1"/>
+  <enum-type name="QGraphicsRectItem::enum_1"/>
+  <enum-type name="QGraphicsScene::ItemIndexMethod"/>
+  <enum-type name="QGraphicsSceneContextMenuEvent::Reason"/>
+  <enum-type name="QGraphicsSimpleTextItem::enum_1"/>
+  <enum-type name="QGraphicsTextItem::enum_1"/>
+  <enum-type name="QGraphicsView::CacheModeFlag" flags="QGraphicsView::CacheMode"/>
+  <enum-type name="QGraphicsView::DragMode"/>
+  <enum-type name="QGraphicsView::OptimizationFlag" flags="QGraphicsView::OptimizationFlags"/>
+  <enum-type name="QGraphicsView::ViewportAnchor"/>
+  <enum-type name="QGraphicsView::ViewportUpdateMode"/>
+  <enum-type name="QIcon::Mode"/>
+  <enum-type name="QIcon::State"/>
+  <enum-type name="QImage::Format"/>
+  <enum-type name="QImage::InvertMode"/>
+  <enum-type name="QImageIOHandler::ImageOption"/>
+  <enum-type name="QImageReader::ImageReaderError"/>
+  <enum-type name="QImageWriter::ImageWriterError"/>
+  <enum-type name="QInputContext::StandardFormat"/>
+  <enum-type name="QInputMethodEvent::AttributeType"/>
+  <enum-type name="QItemSelectionModel::SelectionFlag" flags="QItemSelectionModel::SelectionFlags"/>
+  <enum-type name="QKeySequence::SequenceFormat"/>
+  <enum-type name="QKeySequence::SequenceMatch"/>
+  <enum-type name="QKeySequence::StandardKey"/>
+  <enum-type name="QLCDNumber::Mode"/>
+  <enum-type name="QLCDNumber::SegmentStyle"/>
+  <enum-type name="QLayout::SizeConstraint"/>
+  <enum-type name="QLineEdit::EchoMode"/>
+  <enum-type name="QLineF::IntersectType"/>
+  <enum-type name="QListView::Flow"/>
+  <enum-type name="QListView::LayoutMode"/>
+  <enum-type name="QListView::Movement"/>
+  <enum-type name="QListView::ResizeMode"/>
+  <enum-type name="QListView::ViewMode"/>
+  <enum-type name="QListWidgetItem::ItemType"/>
+  <enum-type name="QMainWindow::DockOption" flags="QMainWindow::DockOptions"/>
+  <enum-type name="QMessageBox::ButtonRole"/>
+  <enum-type name="QMessageBox::Icon"/>
+  <enum-type name="QMovie::CacheMode"/>
+  <enum-type name="QMovie::MovieState"/>
+  <enum-type name="QPaintDevice::PaintDeviceMetric"/>
+  <enum-type name="QPaintEngine::DirtyFlag" flags="QPaintEngine::DirtyFlags"/>
+  <enum-type name="QPaintEngine::PaintEngineFeature" flags="QPaintEngine::PaintEngineFeatures"/>
+  <enum-type name="QPaintEngine::PolygonDrawMode"/>
+  <enum-type name="QPaintEngine::Type"/>
+  <enum-type name="QPageSetupDialog::PageSetupDialogOption" flags="QPageSetupDialog::PageSetupDialogOptions"/>
+  <enum-type name="QPainter::CompositionMode"/>
+  <enum-type name="QPainter::RenderHint" flags="QPainter::RenderHints"/>
+  <enum-type name="QPainterPath::ElementType"/>
+  <enum-type name="QPrintEngine::PrintEnginePropertyKey">
+    <reject-enum-value name="PPK_PaperSize"/>
+  </enum-type>
+  <enum-type name="QPrinter::ColorMode"/>
+  <enum-type name="QPrinter::Orientation"/>
+  <enum-type name="QPrinter::OutputFormat"/>
+  <enum-type name="QPrinter::PageOrder"/>
+  <enum-type name="QPrinter::PaperSource"/>
+  <enum-type name="QPrinter::PrintRange"/>
+  <enum-type name="QPrinter::PrinterMode"/>
+  <enum-type name="QPrinter::PrinterState"/>
+  <enum-type name="QPrinter::Unit"/>
+  <enum-type name="QPrinter::DuplexMode"/>
+  <enum-type name="QProgressBar::Direction"/>
+  <enum-type name="QRegion::RegionType"/>
+  <enum-type name="QRubberBand::Shape"/>
+  <enum-type name="QSessionManager::RestartHint"/>
+  <enum-type name="QSizePolicy::Policy"/>
+  <enum-type name="QSizePolicy::PolicyFlag"/>
+  <enum-type name="QSizePolicy::ControlType" flags="QSizePolicy::ControlTypes"/>
+  <enum-type name="QStandardItem::ItemType"/>
+  <enum-type name="QStyle::SubControl" flags="QStyle::SubControls" extensible="yes" force-integer="yes"/>
+  <enum-type name="QStyle::ComplexControl" extensible="yes"/>
+  <enum-type name="QStyle::ContentsType" extensible="yes"/>
+  <enum-type name="QStyle::ControlElement" extensible="yes"/>
+  <enum-type name="QStyle::PixelMetric" extensible="yes">
+    <reject-enum-value name="PM_MDIFrameWidth"/>
+    <reject-enum-value name="PM_MDIMinimizedWidth"/>
+  </enum-type>
+  <enum-type name="QStyle::PrimitiveElement" extensible="yes">
+    <reject-enum-value name="PE_IndicatorItemViewItemCheck"/>
+    <reject-enum-value name="PE_FrameStatusBarItem"/>
+  </enum-type>
+  <enum-type name="QStyle::StandardPixmap" extensible="yes"/>
+  <enum-type name="QStyle::StateFlag" flags="QStyle::State"/>
+  <enum-type name="QStyle::SubElement" extensible="yes">
+    <reject-enum-value name="SE_ItemViewItemCheckIndicator"/>
+  </enum-type>
+  <enum-type name="QStyleHintReturn::HintReturnType"/>
+  <enum-type name="QStyleHintReturn::StyleOptionType"/>
+  <enum-type name="QStyleHintReturn::StyleOptionVersion"/>
+  <enum-type name="QStyleHintReturnVariant::StyleOptionType"/>
+  <enum-type name="QStyleHintReturnVariant::StyleOptionVersion"/>
+
+  <enum-type name="QStyleHintReturnMask::StyleOptionType"/>
+  <enum-type name="QStyleHintReturnMask::StyleOptionVersion"/>
+  <enum-type name="QStyleOption::StyleOptionType"/>
+  <enum-type name="QStyleOption::OptionType" extensible="yes"/>
+  <enum-type name="QStyleOption::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionButton::ButtonFeature" flags="QStyleOptionButton::ButtonFeatures"/>
+  <enum-type name="QStyleOptionButton::StyleOptionType"/>
+  <enum-type name="QStyleOptionButton::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionComboBox::StyleOptionType"/>
+  <enum-type name="QStyleOptionComboBox::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionComplex::StyleOptionType"/>
+  <enum-type name="QStyleOptionComplex::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionDockWidget::StyleOptionType"/>
+  <enum-type name="QStyleOptionDockWidget::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionDockWidgetV2::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionFocusRect::StyleOptionType"/>
+  <enum-type name="QStyleOptionFocusRect::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionFrame::StyleOptionType"/>
+  <enum-type name="QStyleOptionFrame::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionFrameV2::FrameFeature" flags="QStyleOptionFrameV2::FrameFeatures"/>
+  <enum-type name="QStyleOptionFrameV2::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionGraphicsItem::StyleOptionType"/>
+  <enum-type name="QStyleOptionGraphicsItem::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionGroupBox::StyleOptionType"/>
+  <enum-type name="QStyleOptionGroupBox::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionHeader::SectionPosition"/>
+  <enum-type name="QStyleOptionHeader::SelectedPosition"/>
+  <enum-type name="QStyleOptionHeader::SortIndicator"/>
+  <enum-type name="QStyleOptionHeader::StyleOptionType"/>
+  <enum-type name="QStyleOptionHeader::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionMenuItem::CheckType"/>
+  <enum-type name="QStyleOptionMenuItem::MenuItemType"/>
+  <enum-type name="QStyleOptionMenuItem::StyleOptionType"/>
+  <enum-type name="QStyleOptionMenuItem::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionProgressBar::StyleOptionType"/>
+  <enum-type name="QStyleOptionProgressBar::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionProgressBarV2::StyleOptionType"/>
+  <enum-type name="QStyleOptionProgressBarV2::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionRubberBand::StyleOptionType"/>
+  <enum-type name="QStyleOptionRubberBand::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionSizeGrip::StyleOptionType"/>
+  <enum-type name="QStyleOptionSizeGrip::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionSlider::StyleOptionType"/>
+  <enum-type name="QStyleOptionSlider::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionSpinBox::StyleOptionType"/>
+  <enum-type name="QStyleOptionSpinBox::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionTab::CornerWidget" flags="QStyleOptionTab::CornerWidgets"/>
+  <enum-type name="QStyleOptionTab::SelectedPosition"/>
+  <enum-type name="QStyleOptionTab::StyleOptionType"/>
+  <enum-type name="QStyleOptionTab::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionTab::TabPosition"/>
+  <enum-type name="QStyleOptionTabBarBase::StyleOptionType"/>
+  <enum-type name="QStyleOptionTabBarBase::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionTabV2::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionTabWidgetFrame::StyleOptionType"/>
+  <enum-type name="QStyleOptionTabWidgetFrame::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionTitleBar::StyleOptionType"/>
+  <enum-type name="QStyleOptionTitleBar::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionToolBar::StyleOptionType"/>
+  <enum-type name="QStyleOptionToolBar::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionToolBar::ToolBarFeature" flags="QStyleOptionToolBar::ToolBarFeatures"/>
+  <enum-type name="QStyleOptionToolBar::ToolBarPosition"/>
+  <enum-type name="QStyleOptionToolBox::StyleOptionType"/>
+  <enum-type name="QStyleOptionToolBox::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionToolButton::StyleOptionType"/>
+  <enum-type name="QStyleOptionToolButton::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionToolButton::ToolButtonFeature" flags="QStyleOptionToolButton::ToolButtonFeatures">
+    <reject-enum-value name="MenuButtonPopup"/>
+  </enum-type>
+  <enum-type name="QStyleOptionViewItem::Position"/>
+  <enum-type name="QStyleOptionViewItem::StyleOptionType"/>
+  <enum-type name="QStyleOptionViewItem::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionViewItemV2::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionViewItemV2::ViewItemFeature" flags="QStyleOptionViewItemV2::ViewItemFeatures"/>
+  <enum-type name="QSystemTrayIcon::ActivationReason"/>
+  <enum-type name="QSystemTrayIcon::MessageIcon"/>
+  <enum-type name="QTabBar::Shape"/>
+  <enum-type name="QTabWidget::TabPosition"/>
+  <enum-type name="QTabWidget::TabShape"/>
+  <enum-type name="QTableWidgetItem::ItemType"/>
+  <enum-type name="QTabletEvent::PointerType"/>
+  <enum-type name="QTabletEvent::TabletDevice"/>
+  <enum-type name="QTextCharFormat::UnderlineStyle"/>
+  <enum-type name="QTextCharFormat::VerticalAlignment"/>
+  <enum-type name="QTextCursor::MoveMode"/>
+  <enum-type name="QTextCursor::MoveOperation"/>
+  <enum-type name="QTextCursor::SelectionType"/>
+  <enum-type name="QTextDocument::FindFlag" flags="QTextDocument::FindFlags"/>
+  <enum-type name="QTextDocument::MetaInformation"/>
+  <enum-type name="QTextDocument::ResourceType"/>
+  <enum-type name="QTextEdit::AutoFormattingFlag" flags="QTextEdit::AutoFormatting"/>
+  <enum-type name="QTextEdit::LineWrapMode"/>
+  <enum-type name="QTextFormat::ObjectTypes"/>
+  <enum-type name="QTextFormat::PageBreakFlag" flags="QTextFormat::PageBreakFlags"/>
+  <enum-type name="QTextFrameFormat::Position"/>
+  <enum-type name="QTextFrameFormat::BorderStyle"/>
+  <enum-type name="QTextItem::RenderFlag" flags="QTextItem::RenderFlags"/>
+  <enum-type name="QTextLayout::CursorMode"/>
+  <enum-type name="QTextLength::Type"/>
+  <enum-type name="QTextLine::CursorPosition"/>
+  <enum-type name="QTextLine::Edge"/>
+  <enum-type name="QTextListFormat::Style"/>
+  <enum-type name="QTextOption::Flag" flags="QTextOption::Flags"/>
+  <enum-type name="QTextOption::WrapMode"/>
+  <enum-type name="QTextOption::TabType"/>
+  <enum-type name="QToolButton::ToolButtonPopupMode"/>
+  <enum-type name="QTreeWidgetItem::ItemType"/>
+  <enum-type name="QTreeWidgetItemIterator::IteratorFlag" flags="QTreeWidgetItemIterator::IteratorFlags"/>
+  <enum-type name="QValidator::State"/>
+  <enum-type name="QWidget::RenderFlag" flags="QWidget::RenderFlags"/>
+  <enum-type name="QWorkspace::WindowOrder"/>
+  <enum-type name="QDoubleValidator::Notation"/>
+  <enum-type name="QGraphicsScene::SceneLayer" flags="QGraphicsScene::SceneLayers"/>
+  <enum-type name="QStyleOptionToolBoxV2::SelectedPosition"/>
+  <enum-type name="QStyleOptionToolBoxV2::StyleOptionVersion"/>
+  <enum-type name="QStyleOptionToolBoxV2::TabPosition"/>
+  <enum-type name="QStyleOptionViewItemV3::StyleOptionVersion"/>
+  <enum-type name="QTransform::TransformationType"/>
+  <enum-type name="QTreeWidgetItem::ChildIndicatorPolicy"/>
+  <enum-type name="QWizard::WizardOption" flags="QWizard::WizardOptions"/>
+  <enum-type name="QWizard::WizardPixmap"/>
+  <enum-type name="QWizard::WizardStyle"/>
+  <enum-type name="QImageIOPlugin::Capability" flags="QImageIOPlugin::Capabilities"/>
+  <enum-type name="QStackedLayout::StackingMode"/>
+
+  <enum-type name="QWizard::WizardButton">
+    <reject-enum-value name="NStandardButtons"/>
+    <reject-enum-value name="NButtons"/>
+  </enum-type>
+
+  <enum-type name="QAccessible::Action">
+    <reject-enum-value name="FirstStandardAction"/>
+    <reject-enum-value name="LastStandardAction"/>
+  </enum-type>
+
+  <enum-type name="QBoxLayout::Direction">
+    <reject-enum-value name="Down"/>
+    <reject-enum-value name="Up"/>
+  </enum-type>
+
+
+  <enum-type name="QClipboard::Mode">
+    <reject-enum-value name="LastMode"/>
+  </enum-type>
+
+  <enum-type name="QDialogButtonBox::StandardButton" flags="QDialogButtonBox::StandardButtons">
+    <reject-enum-value name="FirstButton"/>
+    <reject-enum-value name="LastButton"/>
+    <reject-enum-value name="YesAll"/>
+    <reject-enum-value name="NoAll"/>
+    <reject-enum-value name="Default"/>
+    <reject-enum-value name="Escape"/>
+    <reject-enum-value name="FlagMask"/>
+    <reject-enum-value name="ButtonMask"/>
+  </enum-type>
+
+  <enum-type name="QDockWidget::DockWidgetFeature" flags="QDockWidget::DockWidgetFeatures"/>
+
+  <enum-type name="QFont::StyleHint">
+    <reject-enum-value name="SansSerif"/>
+    <reject-enum-value name="Serif"/>
+    <reject-enum-value name="TypeWriter"/>
+    <reject-enum-value name="Decorative"/>
+  </enum-type>
+
+  <enum-type name="QFontDatabase::WritingSystem">
+    <reject-enum-value name="Other"/>
+  </enum-type>
+
+  <enum-type name="QHeaderView::ResizeMode">
+    <reject-enum-value name="Custom"/>
+  </enum-type>
+
+
+  <enum-type name="QMessageBox::StandardButton" flags="QMessageBox::StandardButtons">
+    <reject-enum-value name="FirstButton"/>
+    <reject-enum-value name="LastButton"/>
+    <reject-enum-value name="YesAll"/>
+    <reject-enum-value name="NoAll"/>
+  </enum-type>
+
+  <enum-type name="QPalette::ColorGroup">
+    <reject-enum-value name="Normal"/>
+  </enum-type>
+
+  <enum-type name="QPalette::ColorRole">
+    <reject-enum-value name="NColorRoles"/>
+    <reject-enum-value name="Foreground"/>
+    <reject-enum-value name="Background"/>
+  </enum-type>
+
+  <enum-type name="QPrinter::PageSize">
+    <reject-enum-value name="NPageSize"/>
+    <reject-enum-value name="NPaperSize"/>
+  </enum-type>
+
+  <enum-type name="QSlider::TickPosition">
+<!--    <reject-enum-value name="TicksLeft"/>
+    <reject-enum-value name="TicksRight"/>-->
+  </enum-type>
+
+  <enum-type name="QStyle::StyleHint" extensible="yes">
+    <reject-enum-value name="SH_ScrollBar_StopMouseOverSlider"/>
+  </enum-type>
+
+
+  <enum-type name="QTextFormat::FormatType"/>
+
+  <enum-type name="QTextFormat::Property">
+    <reject-enum-value name="FontSizeIncrement"/>
+    <reject-enum-value name="FirstFontProperty"/>
+    <reject-enum-value name="LastFontProperty"/>
+  </enum-type>
+
+  <value-type name="QTransform">
+    <modify-function signature="operator=(QTransform)" remove="all"/>
+    <modify-function signature="map(int,int,int*,int*)const" remove="all"/>
+    <modify-function signature="map(double,double,double*,double*)const" remove="all"/>
+
+    <modify-function signature="operator*=(double)" access="private"/>
+    <modify-function signature="operator+=(double)" access="private"/>
+    <modify-function signature="operator-=(double)" access="private"/>
+    <modify-function signature="operator/=(double)" access="private"/>
+    <modify-function signature="operator*(QTransform)const" rename="multiplied"/>
+    <modify-function signature="operator*=(QTransform)" access="private"/>
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QTransform___" quote-before-line="}// class"/>
+        </inject-code>
+
+        <modify-function signature="inverted(bool*)const">
+            <access modifier="private"/>
+            <modify-argument index="1">
+                <remove-default-expression/>
+            </modify-argument>
+        </modify-function>
+
+        <modify-function signature="rotate(double,Qt::Axis)">
+            <modify-argument index="1">
+                <remove-default-expression/>
+            </modify-argument>
+            <access modifier="private"/>
+            <rename to="rotate_private"/>
+        </modify-function>
+        <inject-code>
+    /**
+     * Rotates the transformation around the given axis.
+     *
+     * @return The rotated transformation.
+     */
+        <insert-template name="core.private_function_return_self">
+            <replace from="%RETURN_TYPE" to="QTransform"/>
+            <replace from="%FUNCTION_NAME" to="rotate"/>
+            <replace from="%ARGUMENTS" to="double angle, Qt.Axis axis"/>
+            <replace from="%ARGUMENT_NAMES" to="angle, axis"/>
+        </insert-template>
+
+    /**
+     * Rotates the transformation around the z-axis.
+     *
+     * @return The rotated transformation.
+     */
+        <insert-template name="core.private_function_return_self">
+            <replace from="%RETURN_TYPE" to="QTransform"/>
+            <replace from="%FUNCTION_NAME" to="rotate"/>
+            <replace from="%ARGUMENTS" to="double angle"/>
+            <replace from="%ARGUMENT_NAMES" to="angle"/>
+        </insert-template>
+        </inject-code>
+
+        <modify-function signature="rotateRadians(double,Qt::Axis)">
+        <modify-argument index="1">
+            <remove-default-expression/>
+        </modify-argument>
+        <access modifier="private"/>
+        <rename to="rotateRadians_private"/>
+    </modify-function>
+    <inject-code>
+    /**
+     * Rotates the transformation around the given axis.
+     *
+     * @return The rotated transformation.
+     */
+        <insert-template name="core.private_function_return_self">
+            <replace from="%RETURN_TYPE" to="QTransform"/>
+            <replace from="%FUNCTION_NAME" to="rotateRadians"/>
+            <replace from="%ARGUMENTS" to="double angle, Qt.Axis axis"/>
+            <replace from="%ARGUMENT_NAMES" to="angle, axis"/>
+        </insert-template>
+
+    /**
+     * Rotates the transformation around the z-axis.
+     *
+     * @return The rotated transformation.
+     */
+        <insert-template name="core.private_function_return_self">
+            <replace from="%RETURN_TYPE" to="QTransform"/>
+            <replace from="%FUNCTION_NAME" to="rotateRadians"/>
+            <replace from="%ARGUMENTS" to="double angle"/>
+            <replace from="%ARGUMENT_NAMES" to="angle"/>
+        </insert-template>
+    </inject-code>
+
+    <modify-function signature="scale(double,double)">
+        <access modifier="private"/>
+        <rename to="scale_private"/>
+    </modify-function>
+    <inject-code>
+    /**
+     * Scales the transformation using x and y.
+     *
+     * @return The scaled transformation.
+     */
+        <insert-template name="core.private_function_return_self">
+            <replace from="%RETURN_TYPE" to="QTransform"/>
+            <replace from="%FUNCTION_NAME" to="scale"/>
+            <replace from="%ARGUMENTS" to="double x, double y"/>
+            <replace from="%ARGUMENT_NAMES" to="x, y"/>
+        </insert-template>
+    </inject-code>
+
+    <modify-function signature="shear(double,double)">
+        <access modifier="private"/>
+        <rename to="shear_private"/>
+    </modify-function>
+    <inject-code>
+    /**
+      * Shears the transformation using x and y.
+      *
+      * @return The sheared transformation.
+      */
+        <insert-template name="core.private_function_return_self">
+            <replace from="%RETURN_TYPE" to="QTransform"/>
+            <replace from="%FUNCTION_NAME" to="shear"/>
+            <replace from="%ARGUMENTS" to="double x, double y"/>
+            <replace from="%ARGUMENT_NAMES" to="x, y"/>
+        </insert-template>
+    </inject-code>
+
+    <modify-function signature="translate(double,double)">
+        <access modifier="private"/>
+        <rename to="translate_private"/>
+    </modify-function>
+    <inject-code>
+    /**
+     * Translates the transformation using x and y.
+     *
+     * @return The translated transformation.
+     */
+        <insert-template name="core.private_function_return_self">
+            <replace from="%RETURN_TYPE" to="QTransform"/>
+            <replace from="%FUNCTION_NAME" to="translate"/>
+            <replace from="%ARGUMENTS" to="double x, double y"/>
+            <replace from="%ARGUMENT_NAMES" to="x, y"/>
+        </insert-template>
+    </inject-code>
+
+    <modify-function signature="quadToQuad(QPolygonF,QPolygonF,QTransform&amp;)">
+        <access modifier="private"/>
+        <rename to="quadToQuadPrivate"/>
+    </modify-function>
+
+    <modify-function signature="quadToSquare(QPolygonF,QTransform&amp;)">
+        <access modifier="private"/>
+        <rename to="quadToSquarePrivate"/>
+    </modify-function>
+
+    <modify-function signature="squareToQuad(QPolygonF,QTransform&amp;)">
+        <access modifier="private"/>
+        <rename to="squareToQuadPrivate"/>
+    </modify-function>
+
+    </value-type>
+
+  <value-type name="QStyleOption" delete-in-main-thread="yes" polymorphic-base="yes" polymorphic-id-expression="%1-&gt;type == QStyleOption::SO_Default">
+      <modify-function signature="operator=(QStyleOption)" remove="all"/>
+      <modify-function signature="init(const QWidget*)" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-field name="version">
+          <rename to="version_"/>
+      </modify-field>
+  </value-type>
+  <value-type name="QStyleOptionGraphicsItem" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionGraphicsItem::Type &amp;&amp; %1-&gt;version == QStyleOptionGraphicsItem::Version"/>
+  <value-type name="QStyleOptionSizeGrip" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionSizeGrip::Type &amp;&amp; %1-&gt;version == QStyleOptionSizeGrip::Version"/>
+  <value-type name="QStyleOptionButton" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionButton::Type &amp;&amp; %1-&gt;version == QStyleOptionButton::Version"/>
+  <value-type name="QStyleOptionComboBox" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionComboBox::Type &amp;&amp; %1-&gt;version == QStyleOptionComboBox::Version"/>
+  <value-type name="QStyleOptionComplex" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionComplex::Type &amp;&amp; %1-&gt;version == QStyleOptionComplex::Version"/>
+  <value-type name="QStyleOptionDockWidget" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionDockWidget::Type &amp;&amp; %1-&gt;version == QStyleOptionDockWidget::Version"/>
+  <value-type name="QStyleOptionDockWidgetV2" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionDockWidgetV2::Type &amp;&amp; %1-&gt;version == QStyleOptionDockWidgetV2::Version">
+      <modify-function signature="operator=(QStyleOptionDockWidget)" remove="all"/>
+  </value-type>
+  <value-type name="QStyleOptionFocusRect" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionFocusRect::Type &amp;&amp; %1-&gt;version == QStyleOptionFocusRect::Version"/>
+  <value-type name="QStyleOptionFrame" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionFrame::Type &amp;&amp; %1-&gt;version == QStyleOptionFrame::Version"/>
+
+  <value-type name="QStyleOptionFrameV2" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionFrameV2::Type &amp;&amp; %1-&gt;version == QStyleOptionFrameV2::Version">
+    <modify-function signature="operator=(QStyleOptionFrame)" remove="all"/>
+  </value-type>
+
+  <value-type name="QStyleOptionGroupBox" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionGroupBox::Type &amp;&amp; %1-&gt;version == QStyleOptionGroupBox::Version"/>
+  <value-type name="QStyleOptionHeader" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionHeader::Type &amp;&amp; %1-&gt;version == QStyleOptionHeader::Version"/>
+  <value-type name="QStyleOptionMenuItem" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionMenuItem::Type &amp;&amp; %1-&gt;version == QStyleOptionMenuItem::Version"/>
+  <value-type name="QStyleOptionProgressBar" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionProgressBar::Type &amp;&amp; %1-&gt;version == QStyleOptionProgressBar::Version"/>
+
+  <value-type name="QStyleOptionProgressBarV2" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionProgressBarV2::Type &amp;&amp; %1-&gt;version == QStyleOptionProgressBarV2::Version">
+    <modify-function signature="operator=(QStyleOptionProgressBar)" remove="all"/>
+  </value-type>
+
+  <value-type name="QStyleOptionRubberBand" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionRubberBand::Type &amp;&amp; %1-&gt;version == QStyleOptionRubberBand::Version"/>
+  <value-type name="QStyleOptionSlider" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionSlider::Type &amp;&amp; %1-&gt;version == QStyleOptionSlider::Version"/>
+  <value-type name="QStyleOptionSpinBox" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionSpinBox::Type &amp;&amp; %1-&gt;version == QStyleOptionSpinBox::Version"/>
+  <value-type name="QStyleOptionTab" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionTab::Type &amp;&amp; %1-&gt;version == QStyleOptionTab::Version"/>
+  <value-type name="QStyleOptionTabV2" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionTabV2::Type &amp;&amp; %1-&gt;version == QStyleOptionTabV2::Version">
+    <modify-function signature="operator=(const QStyleOptionTab &amp;)" remove="all"/>
+  </value-type>
+  <value-type name="QStyleOptionTabBarBase" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionTabBarBase::Type &amp;&amp; %1-&gt;version == QStyleOptionTabBarBase::Version"/>
+  <value-type name="QStyleOptionTabWidgetFrame" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionTabWidgetFrame::Type &amp;&amp; %1-&gt;version == QStyleOptionTabWidgetFrame::Version"/>
+  <value-type name="QStyleOptionTitleBar" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionTitleBar::Type &amp;&amp; %1-&gt;version == QStyleOptionTitleBar::Version"/>
+  <value-type name="QStyleOptionToolBar" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionToolBar::Type &amp;&amp; %1-&gt;version == QStyleOptionToolBar::Version"/>
+  <value-type name="QStyleOptionToolBox" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionToolBox::Type &amp;&amp; %1-&gt;version == QStyleOptionToolBox::Version"/>
+  <value-type name="QStyleOptionToolBoxV2" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionToolBoxV2::Type &amp;&amp; %1-&gt;version == QStyleOptionToolBoxV2::Version">
+    <modify-function signature="operator=(QStyleOptionToolBox)" remove="all"/>
+  </value-type>
+  <value-type name="QStyleOptionToolButton" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionToolButton::Type &amp;&amp; %1-&gt;version == QStyleOptionToolButton::Version"/>
+  <value-type name="QStyleOptionViewItem" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionViewItem::Type &amp;&amp; %1-&gt;version == QStyleOptionViewItem::Version"/>
+  <value-type name="QStyleOptionViewItemV2" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionViewItemV2::Type &amp;&amp; %1-&gt;version == QStyleOptionViewItemV2::Version">
+    <modify-function signature="operator=(QStyleOptionViewItem)" remove="all"/>
+  </value-type>
+  <value-type name="QStyleOptionViewItemV3" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionViewItemV3::Type &amp;&amp; %1-&gt;version == QStyleOptionViewItemV3::Version">
+    <modify-function signature="operator=(QStyleOptionViewItem)" remove="all"/>
+  </value-type>
+  <value-type name="QStyleOptionViewItemV4" delete-in-main-thread="yes" polymorphic-id-expression="%1-&gt;type == QStyleOptionViewItemV4::Type &amp;&amp; %1-&gt;version == QStyleOptionViewItemV4::Version">
+    <modify-function signature="operator=(QStyleOptionViewItem)" remove="all"/>
+  </value-type>
+  <value-type name="QTextFragment" delete-in-main-thread="yes">
+    <modify-function signature="operator=(QTextFragment)" remove="all"/>
+  </value-type>
+  <value-type name="QBitmap" delete-in-main-thread="yes">
+    <modify-function signature="operator=(const QPixmap &amp;)" remove="all"/>
+    <modify-function signature="QBitmap(QString,const char*)" access="private">
+        <modify-argument index="2"> <remove-default-expression/> </modify-argument>
+    </modify-function>
+
+    <modify-function signature="fromData(QSize,const unsigned char*,QImage::Format)">
+        <access modifier="private"/>
+        <modify-argument index="3">
+            <remove-default-expression/>
+        </modify-argument>
+    </modify-function>
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QBitmap___" quote-before-line="}// class"/>
+        </inject-code>
+    </value-type>
+  <value-type name="QTextInlineObject" delete-in-main-thread="yes"/>
+  <value-type name="QSizePolicy"/>
+  <value-type name="QTableWidgetSelectionRange"/>
+  <value-type name="QTextDocumentFragment" delete-in-main-thread="yes">
+    <modify-function signature="operator=(QTextDocumentFragment)" remove="all"/>
+  </value-type>
+  <value-type name="QTextOption" delete-in-main-thread="yes">
+    <modify-function signature="operator=(const QTextOption &amp;)" remove="all"/>
+  </value-type>
+  <value-type name="QTextLine" delete-in-main-thread="yes">
+    <modify-function signature="cursorToX(int*,QTextLine::Edge)const">
+        <remove/>
+    </modify-function>
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QTextLine___" quote-before-line="}// class"/>
+        </inject-code>
+    </value-type>
+  <value-type name="QTextTableFormat" delete-in-main-thread="yes"/>
+  <value-type name="QTextImageFormat" delete-in-main-thread="yes"/>
+  <value-type name="QTextFrameFormat" delete-in-main-thread="yes">
+    <modify-function signature="isValid()const" access="non-final"/>
+  </value-type>
+  <value-type name="QTextLength" delete-in-main-thread="yes"/>
+  <value-type name="QItemSelectionRange">
+      <modify-function signature="intersect(QItemSelectionRange)const" remove="all"/> <!--### Obsolete in 4.3-->
+  </value-type>
+
+  <value-type name="QPainterPath">
+    <modify-function signature="operator=(QPainterPath)" remove="all"/>
+  </value-type>
+  <value-type name="QPalette">
+    <modify-function signature="operator=(const QPalette&amp;)" remove="all"/>
+
+      <modify-function signature="QPalette(QColor, QColor, QColor, QColor, QColor, QColor, QColor)" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="background()const" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="foreground()const" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="serialNumber()const" remove="all"/> <!--### Obsolete in 4.3-->
+  </value-type>
+  <value-type name="QKeySequence">
+    <modify-function signature="operator=(QKeySequence)" remove="all"/>
+    <modify-function signature="operator int()const" access="private"/>
+    <modify-function signature="operator[](uint)const" access="private"/>
+
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QKeySequence___" quote-before-line="}// class"/>
+        </inject-code>
+
+    </value-type>
+
+  <value-type name="QPicture" delete-in-main-thread="yes">
+    <modify-function signature="operator=(QPicture)" remove="all"/>
+    <modify-function signature="pictureFormat(QString)">
+        <remove/>
+    </modify-function>
+
+    <modify-function signature="inputFormatList()" remove="all"/> <!--### Obsolete in 4.3-->
+    <modify-function signature="inputFormats()" remove="all"/> <!--### Obsolete in 4.3-->
+    <modify-function signature="outputFormatList()" remove="all"/> <!--### Obsolete in 4.3-->
+    <modify-function signature="outputFormats()" remove="all"/> <!--### Obsolete in 4.3-->
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QPicture___" quote-before-line="}// class"/>
+        </inject-code>
+        <extra-includes>
+            <include file-name="qt.core.QIODevice" location="java"/>
+        </extra-includes>
+        <modify-function signature="load(QIODevice*,const char*)">
+            <access modifier="private"/>
+            <modify-argument index="2">
+                <remove-default-expression/>
+            </modify-argument>
+        </modify-function>
+
+
+        <modify-function signature="load(QString,const char*)">
+            <access modifier="private"/>
+            <modify-argument index="2">
+                <remove-default-expression/>
+            </modify-argument>
+        </modify-function>
+
+
+        <modify-function signature="save(QIODevice*,const char*)">
+            <access modifier="private"/>
+            <modify-argument index="2">
+                <remove-default-expression/>
+            </modify-argument>
+        </modify-function>
+
+
+        <modify-function signature="save(QString,const char*)">
+            <access modifier="private"/>
+            <modify-argument index="2">
+                <remove-default-expression/>
+            </modify-argument>
+        </modify-function>
+
+<!--
+        <modify-function signature="setData(const char*,uint)">
+            <modify-argument index="1">
+                <replace-type modified-type="byte[]"/>
+                <conversion-rule class="shell">
+                    jbyteArray %out = __jni_env-&gt;NewByteArray(%2);
+                    __jni_env-&gt;SetByteArrayRegion(%out, 0, %2, (jbyte *) %in);
+                </conversion-rule>
+                <conversion-rule class="native">
+                    char *%out = (char *) __jni_env-&gt;GetByteArrayElements((jbyteArray) %in, 0);
+                    char *__ptr = %out;
+                    Q_UNUSED(__ptr)
+                </conversion-rule>
+            </modify-argument>
+
+            <modify-argument index="2">
+                <remove-argument/>
+                <conversion-rule class="shell">
+                    // nothing
+                </conversion-rule>
+                <conversion-rule class="native">
+                    int %out = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>
+-->
+        <modify-function signature="pictureFormat(QString)">
+            <remove/>
+        </modify-function>
+
+        <modify-function signature="data()const">
+            <access modifier="private"/>
+            <rename to="data_private"/>
+        </modify-function>
+
+    </value-type>
+
+  <value-type name="QRegion"> <!-- expense-limit="4096"> -->
+    <modify-function signature="operator=(QRegion)" remove="all"/>
+    <modify-function signature="operator&amp;=(QRegion)" remove="all"/>
+    <modify-function signature="operator+=(QRegion)" remove="all"/>
+    <modify-function signature="operator-=(QRegion)" remove="all"/>
+    <modify-function signature="operator^=(QRegion)" remove="all"/>
+    <modify-function signature="operator|=(QRegion)" remove="all"/>
+    <modify-function signature="operator&amp;(QRegion)const" remove="all"/>
+    <modify-function signature="operator+(QRegion)const" remove="all"/>
+    <modify-function signature="operator-(QRegion)const" remove="all"/>
+    <modify-function signature="operator^(QRegion)const" remove="all"/>
+    <modify-function signature="operator|(QRegion)const" remove="all"/>
+    <modify-function signature="eor(QRegion)const" remove="all"/> <!--### Obsolete in 4.3-->
+    <modify-function signature="intersect(QRegion)const" remove="all"/> <!--### Obsolete in 4.3-->
+    <modify-function signature="subtract(QRegion)const" remove="all"/> <!--### Obsolete in 4.3-->
+    <modify-function signature="unite(QRegion)const" remove="all"/> <!--### Obsolete in 4.3-->
+    <modify-function signature="operator&amp;=(QRect)" remove="all"/>
+    <modify-function signature="operator+=(QRect)" remove="all"/>
+
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QRegion___" quote-before-line="}// class"/>
+        </inject-code>
+        <modify-function signature="setRects(const QRect*,int)">
+            <access modifier="private"/>
+        </modify-function>
+
+    </value-type>
+
+  <value-type name="QTextBlock" delete-in-main-thread="yes">
+    <modify-function signature="operator=(QTextBlock)" remove="all"/>
+    <modify-function signature="setUserData(QTextBlockUserData *)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+     </modify-function>
+  </value-type>
+  <value-type name="QTextBlockFormat" delete-in-main-thread="yes"/>
+  <value-type name="QTextTableCellFormat" delete-in-main-thread="yes"/>
+  <value-type name="QTextCharFormat" delete-in-main-thread="yes">
+    <modify-function signature="isValid()const" access="non-final"/>
+
+      <modify-function signature="anchorName()const" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="setAnchorName(QString)" remove="all"/> <!--### Obsolete in 4.3-->
+  </value-type>
+  <value-type name="QTextFormat" delete-in-main-thread="yes">
+    <modify-function signature="operator=(QTextFormat)" remove="all"/>
+    <modify-function signature="isValid()const" access="non-final"/>
+
+  </value-type>
+
+  <value-type name="QTextListFormat" delete-in-main-thread="yes"/>
+  <value-type name="QPolygon">
+    <extra-includes>
+        <include file-name="qt.core.QPoint" location="java"/>
+    </extra-includes>
+    
+    <modify-function signature="QPolygon(int, const int *)" remove="all"/>
+    <modify-function signature="operator+(QVector&lt;QPoint&gt;)const" remove="all"/>
+    <modify-function signature="operator&lt;&lt;(QPoint)" remove="all"/>
+    <modify-function signature="operator&lt;&lt;(QVector&lt;QPoint&gt;)" remove="all"/>
+    
+    <inject-code class="java">
+    public final void insert(int i, QPoint t) {
+        qtd_QPolygon_insert_int_QPoint(nativeId, i, t);
+    }
+    
+    public final void insert(int i, int n, QPoint t) {
+        qtd_QPolygon_insert_int_int_QPoint(nativeId, i, n, t);
+    }
+    </inject-code>
+    <inject-code class="java-free">
+private extern(C) void  qtd_QPolygon_insert_int_QPoint(void* __this_nativeId,
+ int i0,
+ QPoint t1);
+private extern(C) void  qtd_QPolygon_insert_int_int_QPoint(void* __this_nativeId,
+ int i0,
+ int n1,
+ QPoint t2);
+    </inject-code>
+    <inject-code class="native">
+// QPolygon::insert(int i, const QPoint &amp; t)
+extern "C" DLL_PUBLIC void qtd_QPolygon_insert_int_QPoint
+(void* __this_nativeId,
+ int i0,
+ QPoint t1)
+{
+    QPolygon *__qt_this = (QPolygon *) __this_nativeId;
+    __qt_this->insert((int )i0, (const QPoint&amp; )t1);
+
+}
+
+// QPolygon::insert(int i, int n, const QPoint &amp; t)
+extern "C" DLL_PUBLIC void qtd_QPolygon_insert_int_int_QPoint
+(void* __this_nativeId,
+ int i0,
+ int n1,
+ QPoint t2)
+{
+    QPolygon *__qt_this = (QPolygon *) __this_nativeId;
+    __qt_this->insert((int )i0, (int )n1, (const QPoint&amp; )t2);
+
+}
+    </inject-code>
+    
+    <inject-code>
+        <import-file name="typesystem_gui-java.java" quote-after-line="class QPolygon___" quote-before-line="}// class"/>
+    </inject-code>
+<!-- qtd2
+        <inject-code class="native">
+      extern "C" JNIEXPORT void JNICALL QTJAMBI_FUNCTION_PREFIX(Java_com_trolltech_qt_gui_QPolygon_add_1private)
+      (JNIEnv *__jni_env, jobject, jlong nativeId, jint x, jint y)
+      {
+          Q_UNUSED(__jni_env);
+          QPolygon *polygon = (QPolygon *) qtjambi_from_jlong(nativeId);
+          if (!polygon)
+              return;
+          *polygon &lt;&lt; QPoint(x, y);
+      }
+        </inject-code> -->
+    </value-type>
+
+  <value-type name="QPolygonF">
+    <modify-function signature="operator+(QVector&lt;QPointF&gt;)const" remove="all"/>
+    <modify-function signature="operator&lt;&lt;(QPointF)" remove="all"/>
+    <modify-function signature="operator&lt;&lt;(QVector&lt;QPointF&gt;)" remove="all"/>
+  
+        <extra-includes>
+            <include file-name="qt.core.QPoint" location="java"/>
+        </extra-includes>
+
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QPolygonF___" quote-before-line="}// class"/>
+        </inject-code>
+<!--
+        <inject-code class="native">
+      extern "C" JNIEXPORT void JNICALL QTJAMBI_FUNCTION_PREFIX(Java_com_trolltech_qt_gui_QPolygonF_add_1private)
+      (JNIEnv *__jni_env, jobject, jlong nativeId, jdouble x, jdouble y)
+      {
+          Q_UNUSED(__jni_env);
+          QPolygonF *polygon = (QPolygonF *) qtjambi_from_jlong(nativeId);
+          if (!polygon)
+              return;
+          *polygon &lt;&lt; QPointF(x, y);
+      }
+        </inject-code>
+		-->
+    <inject-code class="java">
+    public final void insert(int i, QPointF t) {
+        qtd_QPolygonF_insert_int_QPointF(nativeId, i, t);
+    }
+
+    public final void insert(int i, int n, QPointF t) {
+        qtd_QPolygonF_insert_int_int_QPointF(nativeId, i, n, t);
+    }
+    </inject-code>
+    <inject-code class="java-free">
+private extern(C) void  qtd_QPolygonF_insert_int_QPointF(void* __this_nativeId,
+ int i0,
+ QPointF t1);
+private extern(C) void  qtd_QPolygonF_insert_int_int_QPointF(void* __this_nativeId,
+ int i0,
+ int n1,
+ QPointF t2);
+    </inject-code>
+    <inject-code class="native">
+// QPolygonF::insert(int i, const QPointF &amp; t)
+extern "C" DLL_PUBLIC void qtd_QPolygonF_insert_int_QPointF
+(void* __this_nativeId,
+ int i0,
+ QPointF t1)
+{
+    QPolygonF *__qt_this = (QPolygonF *) __this_nativeId;
+    __qt_this->insert((int )i0, (const QPointF&amp; )t1);
+
+}
+
+// QPolygonF::insert(int i, int n, const QPointF &amp; t)
+extern "C" DLL_PUBLIC void qtd_QPolygonF_insert_int_int_QPointF
+(void* __this_nativeId,
+ int i0,
+ int n1,
+ QPointF t2)
+{
+    QPolygonF *__qt_this = (QPolygonF *) __this_nativeId;
+    __qt_this->insert((int )i0, (int )n1, (const QPointF&amp; )t2);
+
+}
+    </inject-code>
+    </value-type>
+
+  <value-type name="QIcon" delete-in-main-thread="yes">
+
+    <inject-code class="java">
+        <insert-template name="gui.class_from_variant_java">
+            <replace from="%CLASS_NAME" to="QIcon"/>
+        </insert-template>
+
+    </inject-code>   
+    <inject-code class="java-free">
+        <insert-template name="gui.class_from_variant_java_free">
+            <replace from="%CLASS_NAME" to="QIcon"/>
+        </insert-template>
+    </inject-code>
+    <inject-code class="native">
+        <insert-template name="gui.class_from_variant_native">
+            <replace from="%CLASS_NAME" to="QIcon"/>
+        </insert-template>
+    </inject-code>
+
+    <modify-function signature="operator=(QIcon)" remove="all"/>
+    <modify-function signature="serialNumber()const" remove="all"/> <!--### Obsolete in 4.3-->
+    <modify-function signature="QIcon(QIconEngineV2 *)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="QIcon(QIconEngine *)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="operator QVariant()const" access="private"/>
+    <inject-code class="java">
+        public final QVariant toVariant() {
+            return operator_cast_QVariant();
+        }
+    </inject-code>
+
+  </value-type>
+
+  <value-type name="QTextFrame::iterator" delete-in-main-thread="yes">
+    <include file-name="QTextFrame" location="global"/>
+    <modify-function signature="operator++(int)" remove="all"/>
+    <modify-function signature="operator--(int)" remove="all"/>
+    <modify-function signature="operator=(QTextFrame::iterator)" remove="all"/>
+    <modify-function signature="operator++()" access="private"/>
+    <modify-function signature="operator--()" access="private"/>
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QTextFrame_iterator___" quote-before-line="}// class"/>
+        </inject-code>
+
+    </value-type>
+
+  <value-type name="QTreeWidgetItemIterator" delete-in-main-thread="yes">
+    <custom-constructor>
+    return new QTreeWidgetItemIterator(*copy);
+    </custom-constructor>
+    <custom-destructor>
+    delete copy;
+    </custom-destructor>
+    <modify-function signature="operator=(QTreeWidgetItemIterator)" remove="all"/>
+    <modify-function signature="operator++(int)" remove="all"/>
+    <modify-function signature="operator--(int)" remove="all"/>
+    <modify-function signature="operator+=(int)" access="private"/>
+    <modify-function signature="operator-=(int)" access="private"/>
+    <modify-function signature="operator++()" access="private"/>
+    <modify-function signature="operator--()" access="private"/>
+    <modify-function signature="operator*()const" access="private"/>
+   
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QTreeWidgetItemIterator___" quote-before-line="}// class"/>
+        </inject-code>
+
+    </value-type>
+
+  <value-type name="QTextBlock::iterator" delete-in-main-thread="yes">
+    <include file-name="QTextBlock" location="global"/>
+
+    <modify-function signature="operator++()" access="private"/>
+    <modify-function signature="operator--()" access="private"/>
+    <modify-function signature="operator++(int)" remove="all"/>
+    <modify-function signature="operator--(int)" remove="all"/>
+   
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QTextBlock_iterator___" quote-before-line="}// class"/>
+        </inject-code>
+
+    </value-type>
+
+  <value-type name="QAbstractTextDocumentLayout::PaintContext" delete-in-main-thread="yes">
+    <include file-name="QAbstractTextDocumentLayout" location="global"/>
+  </value-type>
+  <value-type name="QAbstractTextDocumentLayout::Selection" delete-in-main-thread="yes"/>
+
+  <value-type name="QPixmap" delete-in-main-thread="yes">
+    <modify-function signature="operator=(QPixmap)" remove="all"/>
+    <modify-function signature="operator!()const" remove="all"/>
+    <modify-function signature="operator QVariant()const" access="private"/>
+    <modify-function signature="QPixmap(const char **)" access="private"/>
+    <modify-function signature="serialNumber()const" remove="all"/> <!--### Obsolete in 4.3-->
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QPixmap___" quote-before-line="}// class"/>
+        </inject-code>
+        <modify-function signature="fill(const QColor &amp;)">
+            <modify-argument index="1">
+                <replace-default-expression with="QColor.White"/>
+            </modify-argument>
+        </modify-function>
+
+
+        <extra-includes>
+            <include file-name="QBitmap" location="global"/>
+            <include file-name="QMatrix" location="global"/>
+        </extra-includes>
+        
+    <inject-code class="java">
+        <insert-template name="gui.class_from_variant_java">
+            <replace from="%CLASS_NAME" to="QPixmap"/>
+        </insert-template>
+    </inject-code>   
+    <inject-code class="java-free">
+        <insert-template name="gui.class_from_variant_java_free">
+            <replace from="%CLASS_NAME" to="QPixmap"/>
+        </insert-template>
+    </inject-code>
+    <inject-code class="native">
+        <insert-template name="gui.class_from_variant_native_shell">
+            <replace from="%CLASS_NAME" to="QPixmap"/>
+        </insert-template>
+    </inject-code>
+
+        <modify-function signature="save(QIODevice *, const char *, int) const">
+            <access modifier="private"/>
+            <rename to="private_save"/>
+            <modify-argument index="2">
+                <remove-default-expression/>
+            </modify-argument>
+            <modify-argument index="3">
+                <remove-default-expression/>
+            </modify-argument>
+        </modify-function>
+        <inject-code>
+            <insert-template name="gui.pixmap_save">
+                <replace from="%INPUT_TYPE" to="qt.core.QIODevice"/>
+                <replace from="%INPUT_NAME" to="dev"/>
+            </insert-template>
+        </inject-code>
+
+        <modify-function signature="save(const QString &amp;, const char *, int) const">
+            <access modifier="private"/>
+            <rename to="private_save"/>
+            <modify-argument index="2">
+                <remove-default-expression/>
+            </modify-argument>
+            <modify-argument index="3">
+                <remove-default-expression/>
+            </modify-argument>
+        </modify-function>
+        <inject-code>
+            <insert-template name="gui.pixmap_save">
+                <replace from="%INPUT_TYPE" to="String"/>
+                <replace from="%INPUT_NAME" to="fileName"/>
+            </insert-template>
+        </inject-code>
+
+        <modify-function signature="QPixmap(QString,const char*,QFlags&lt;Qt::ImageConversionFlag&gt;)">
+            <access modifier="private"/>
+            <modify-argument index="2">
+                <remove-default-expression/>
+            </modify-argument>
+            <modify-argument index="3">
+                <remove-default-expression/>
+            </modify-argument>
+        </modify-function>
+        <inject-code>
+            <insert-template name="gui.pixmap_constructor"/>
+        </inject-code>
+
+        <modify-function signature="load(QString,const char*,QFlags&lt;Qt::ImageConversionFlag&gt;)">
+            <access modifier="private"/>
+            <modify-argument index="2">
+                <remove-default-expression/>
+            </modify-argument>
+            <modify-argument index="3">
+                <remove-default-expression/>
+            </modify-argument>
+        </modify-function>
+        <inject-code>
+            <insert-template name="gui.pixmap_load">
+                <replace from="%FUNCTION_NAME" to="load"/>
+                <replace from="%INPUT_TYPE" to="String"/>
+                <replace from="%INPUT_NAME" to="fileName"/>
+                <replace from="%OUTPUT_NAME" to="fileName"/>
+            </insert-template>
+        </inject-code>
+
+        <modify-function signature="loadFromData(const unsigned char*,uint,const char*,QFlags&lt;Qt::ImageConversionFlag&gt;)">
+            <access modifier="private"/>
+            <modify-argument index="3">
+                <remove-default-expression/>
+            </modify-argument>
+            <modify-argument index="4">
+                <remove-default-expression/>
+            </modify-argument>
+        </modify-function>
+        <inject-code>
+            <insert-template name="gui.pixmap_load">
+                <replace from="%FUNCTION_NAME" to="loadFromData"/>
+                <replace from="%INPUT_TYPE" to="byte[]"/>
+                <replace from="%INPUT_NAME" to="data"/>
+                <replace from="%OUTPUT_NAME" to="qt.internal.QtJambiInternal.byteArrayToNativePointer(data), data.length"/>
+            </insert-template>
+        </inject-code>
+
+        <modify-function signature="loadFromData(QByteArray,const char*,QFlags&lt;Qt::ImageConversionFlag&gt;)">
+            <access modifier="private"/>
+            <modify-argument index="2">
+                <remove-default-expression/>
+            </modify-argument>
+            <modify-argument index="3">
+                <remove-default-expression/>
+            </modify-argument>
+        </modify-function>
+        <inject-code>
+            <insert-template name="gui.pixmap_load">
+                <replace from="%FUNCTION_NAME" to="loadFromData"/>
+                <replace from="%INPUT_TYPE" to="qt.core.QByteArray"/>
+                <replace from="%INPUT_NAME" to="data"/>
+                <replace from="%OUTPUT_NAME" to="data"/>
+            </insert-template>
+        </inject-code>
+    </value-type>
+
+  <value-type name="QTextCursor" delete-in-main-thread="yes">
+    <extra-includes>
+        <include file-name="QTextBlock" location="global"/>
+        <include file-name="QTextDocumentFragment" location="global"/>
+    </extra-includes>
+    <modify-function signature="operator=(QTextCursor)" remove="all"/>
+    <modify-function signature="selectedTableCells(int*,int*,int*,int*)const">
+        <access modifier="private"/>
+    </modify-function>
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QTextCursor___" quote-before-line="}// class"/>
+        </inject-code>
+    </value-type>
+
+  <value-type name="QTextLayout::FormatRange">
+    <include file-name="QTextLayout" location="global"/>
+  </value-type>
+
+  <value-type name="QInputMethodEvent::Attribute">
+    <include file-name="QInputMethodEvent" location="global"/>
+    <custom-constructor>
+    return new QInputMethodEvent::Attribute(copy-&gt;type, copy-&gt;start, copy-&gt;length, copy-&gt;value);
+    </custom-constructor>
+    <custom-destructor>
+    delete copy;
+    </custom-destructor>
+  </value-type>
+
+  <value-type name="QItemSelection" delete-in-main-thread="yes">
+
+    <modify-function signature="operator+(const QList&lt;QItemSelectionRange&gt;&amp;)const" remove="all"/>
+    <modify-function signature="operator+=(const QList&lt;QItemSelectionRange&gt;&amp;)" remove="all"/>
+    <modify-function signature="operator+=(const QItemSelectionRange&amp;)" remove="all"/>
+    <modify-function signature="operator&lt;&lt;(const QList&lt;QItemSelectionRange&gt;&amp;)" remove="all"/>
+    <modify-function signature="operator&lt;&lt;(QItemSelectionRange)" remove="all"/>
+<!--  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QItemSelection___" quote-before-line="}// class"/>
+        </inject-code>
+        <modify-function signature="split(QItemSelectionRange,QItemSelectionRange,QItemSelection*)">
+            <access modifier="private"/>
+        </modify-function>
+-->
+
+    </value-type>
+
+  <value-type name="QMatrix">
+      <extra-includes>
+        <include file-name="QPainterPath" location="global"/>
+      </extra-includes>
+
+      <modify-function signature="map(int,int,int*,int*)const" remove="all"/>
+      <modify-function signature="map(double,double,double*,double*)const" remove="all"/>
+      <modify-function signature="operator=(QMatrix)" remove="all"/>
+
+      <modify-function signature="operator*(QMatrix)const" access="private"/>
+      <modify-function signature="operator*=(QMatrix)" access="private"/>
+      <modify-function signature="rotate(double)" access="private" rename="rotate_private"/>
+      <modify-function signature="scale(double,double)" access="private" rename="scale_private"/>
+      <modify-function signature="shear(double,double)" access="private" rename="shear_private"/>
+      <modify-function signature="translate(double,double)" access="private" rename="translate_private"/>
+
+      <modify-function signature="inverted(bool*)const">
+        <access modifier="private"/>
+        <modify-argument index="1">
+            <remove-default-expression/>
+        </modify-argument>
+      </modify-function>
+
+    <inject-code>
+      <insert-template name="core.unary_other_type">
+        <replace from="%FUNCTION_NAME" to="rotate"/>
+        <replace from="%OUT_TYPE" to="QMatrix"/>
+        <replace from="%IN_TYPE" to="double"/>
+      </insert-template>
+
+      <insert-template name="core.private_function_return_self">
+        <replace from="%RETURN_TYPE" to="QMatrix"/>
+        <replace from="%FUNCTION_NAME" to="scale"/>
+        <replace from="%ARGUMENTS" to="double sx, double sy"/>
+        <replace from="%ARGUMENT_NAMES" to="sx, sy"/>
+      </insert-template>
+
+      <insert-template name="core.private_function_return_self">
+        <replace from="%RETURN_TYPE" to="QMatrix"/>
+        <replace from="%FUNCTION_NAME" to="shear"/>
+        <replace from="%ARGUMENTS" to="double sh, double sv"/>
+        <replace from="%ARGUMENT_NAMES" to="sh, sv"/>
+      </insert-template>
+
+      <insert-template name="core.private_function_return_self">
+        <replace from="%RETURN_TYPE" to="QMatrix"/>
+        <replace from="%FUNCTION_NAME" to="translate"/>
+        <replace from="%ARGUMENTS" to="double dx, double dy"/>
+        <replace from="%ARGUMENT_NAMES" to="dx, dy"/>
+      </insert-template>
+    </inject-code>
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QMatrix___" quote-before-line="}// class"/>
+        </inject-code>
+
+    </value-type>
+
+  <value-type name="QConicalGradient" polymorphic-id-expression="%1-&gt;type() == QGradient::ConicalGradient">
+    <custom-constructor>
+    return new QConicalGradient(copy-&gt;center(), copy-&gt;angle());
+    </custom-constructor>
+    <custom-destructor>
+    delete copy;
+    </custom-destructor>
+  </value-type>
+
+  <value-type name="QFontInfo"> <!-- delete-in-main-thread="yes" expense-cost="1" expense-limit="1000"> -->
+    <custom-constructor>
+    return new QFontInfo(*copy);
+    </custom-constructor>
+    <custom-destructor>
+    delete copy;
+    </custom-destructor>
+    <modify-function signature="operator=(QFontInfo)" remove="all"/>
+
+  </value-type>
+
+  <value-type name="QRadialGradient" polymorphic-id-expression="%1-&gt;type() == QGradient::RadialGradient">
+    <custom-constructor>
+    return new QRadialGradient(copy-&gt;center(), copy-&gt;radius(), copy-&gt;focalPoint());
+    </custom-constructor>
+    <custom-destructor>
+    delete copy;
+    </custom-destructor>
+  </value-type>
+
+  <value-type name="QPainterPath::Element">
+    <modify-field name="x" write="false"/>
+    <modify-field name="y" write="false"/>
+    <modify-field name="type" write="false"/>
+    <include file-name="QPainterPath" location="global"/>
+    <modify-function signature="operator QPointF()const" access="private"/>
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QPainterPath_Element___" quote-before-line="}// class"/>
+        </inject-code>
+
+    </value-type>
+
+  <value-type name="QTextEdit::ExtraSelection" delete-in-main-thread="yes">
+    <include file-name="QTextEdit" location="global"/>
+  </value-type>
+
+  <value-type name="QFont" delete-in-main-thread="yes"> <!-- <expense-cost="1" expense-limit="1000"> -->
+
+    <extra-includes>
+        <include file-name="QStringList" location="global"/>
+    </extra-includes>
+    <modify-function signature="operator=(QFont)" remove="all"/>
+  </value-type>
+
+  <value-type name="QTextTableCell" delete-in-main-thread="yes">
+    <extra-includes>
+        <include file-name="QTextCursor" location="global"/>
+    </extra-includes>
+    <modify-function signature="operator=(QTextTableCell)" remove="all"/>
+  </value-type>
+
+  <value-type name="QImage"> <!-- expense-limit="67108864" expense-cost="height()*bytesPerLine()"> -->
+    <modify-function signature="QImage(const char *, const char *)">
+        <remove/>
+    </modify-function>
+    <modify-function signature="QImage(const char **)">
+        <access modifier="private"/>
+    </modify-function>
+    <modify-function signature="QImage(const unsigned char*,int,int,int,QImage::Format)">
+        <remove/>
+    </modify-function>
+    <modify-function signature="bits()const">
+        <remove/>
+    </modify-function>
+    <modify-function signature="scanLine(int)const">
+        <remove/>
+    </modify-function>
+    <modify-function signature="QImage(const unsigned char *, int, int, QImage::Format)">
+        <remove/>
+    </modify-function>
+
+    <extra-includes>
+        <include file-name="QStringList" location="global"/>
+        <include file-name="QMatrix" location="global"/>
+    </extra-includes>
+    <modify-function signature="save(const QString &amp;, const char *, int) const">
+        <access modifier="private"/>
+        <rename to="private_save"/>
+        <modify-argument index="2">
+            <remove-default-expression/>
+        </modify-argument>
+        <modify-argument index="3">
+            <remove-default-expression/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="QImage(unsigned char*,int,int,QImage::Format)">
+        <access modifier="private"/>
+    </modify-function>
+
+    <modify-function signature="QImage(QString,const char*)">
+        <access modifier="private"/>
+        <modify-argument index="2">
+            <remove-default-expression/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="load(QString,const char*)">
+        <access modifier="private"/>
+        <modify-argument index="2">
+            <remove-default-expression/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="load(QIODevice*,const char*)">
+        <access modifier="private"/>
+    </modify-function>
+
+    <modify-function signature="loadFromData(const unsigned char*,int,const char*)">
+        <access modifier="private"/>
+        <modify-argument index="2">
+            <remove-default-expression/>
+        </modify-argument>
+        <modify-argument index="3">
+            <remove-default-expression/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="loadFromData(QByteArray,const char*)">
+        <access modifier="private"/>
+        <modify-argument index="2">
+            <remove-default-expression/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="operator=(QImage)" remove="all"/>
+
+    <modify-function signature="setText(const char*,const char*,QString)">
+        <remove/>
+    </modify-function>
+
+    <modify-function signature="text(const char*,const char*)const">
+        <remove/>
+    </modify-function>
+
+    <modify-function signature="fromData(QByteArray,const char*)">
+        <access modifier="private"/>
+        <modify-argument index="2">
+            <remove-default-expression/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="fromData(const unsigned char*,int,const char*)">
+        <remove/>
+    </modify-function>
+
+      <modify-function signature="serialNumber()const" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="textLanguages()const" remove="all"/> <!--### Obsolete in 4.3-->
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QImage___" quote-before-line="}// class"/>
+        </inject-code>
+        <inject-code>
+            <insert-template name="gui.pixmap_save">
+                <replace from="%INPUT_TYPE" to="String"/>
+                <replace from="%INPUT_NAME" to="fileName"/>
+            </insert-template>
+        </inject-code>
+
+        <modify-function signature="save(QIODevice *, const char *, int) const">
+            <access modifier="private"/>
+            <rename to="private_save"/>
+            <modify-argument index="2">
+                <remove-default-expression/>
+            </modify-argument>
+            <modify-argument index="3">
+                <remove-default-expression/>
+            </modify-argument>
+        </modify-function>
+        <inject-code>
+            <insert-template name="gui.pixmap_save">
+                <replace from="%INPUT_TYPE" to="qt.core.QIODevice"/>
+                <replace from="%INPUT_NAME" to="dev"/>
+            </insert-template>
+        </inject-code>
+
+        <template name="gui.image_load">
+        public final boolean %FUNCTION_NAME(%ARGUMENT_TYPE %ARGUMENT_NAME, String format) {
+            return %FUNCTION_NAME(%OUT_ARGUMENT_NAME, format != null ? QNativePointer.createCharPointer(format) : null);
+        }
+
+        public final boolean %FUNCTION_NAME(%ARGUMENT_TYPE %ARGUMENT_NAME) {
+            return %FUNCTION_NAME(%ARGUMENT_NAME, (String) null);
+        }
+        </template>
+<!--
+        <inject-code>
+            <insert-template name="gui.image_load">
+                <replace from="%FUNCTION_NAME" to="load"/>
+                <replace from="%ARGUMENT_TYPE" to="String"/>
+                <replace from="%ARGUMENT_NAME" to="fileName"/>
+                <replace from="%OUT_ARGUMENT_NAME" to="fileName"/>
+            </insert-template>
+        </inject-code>
+
+        <inject-code>
+            <insert-template name="gui.image_load">
+                <replace from="%FUNCTION_NAME" to="load"/>
+                <replace from="%ARGUMENT_TYPE" to="qt.core.QIODevice"/>
+                <replace from="%ARGUMENT_NAME" to="device"/>
+                <replace from="%OUT_ARGUMENT_NAME" to="device"/>
+            </insert-template>
+        </inject-code>
+
+        <inject-code>
+            <insert-template name="gui.image_load">
+                <replace from="%FUNCTION_NAME" to="loadFromData"/>
+                <replace from="%ARGUMENT_TYPE" to="byte[]"/>
+                <replace from="%ARGUMENT_NAME" to="data"/>
+                <replace from="%OUT_ARGUMENT_NAME" to="qt.internal.QtJambiInternal.byteArrayToNativePointer(data), data.length"/>
+            </insert-template>
+        </inject-code>
+
+        <inject-code>
+            <insert-template name="gui.image_load">
+                <replace from="%FUNCTION_NAME" to="loadFromData"/>
+                <replace from="%ARGUMENT_TYPE" to="qt.core.QByteArray"/>
+                <replace from="%ARGUMENT_NAME" to="data"/>
+                <replace from="%OUT_ARGUMENT_NAME" to="data"/>
+            </insert-template>
+        </inject-code>
+
+        <inject-code>
+            <insert-template name="gui.image_load">
+                <replace from="%FUNCTION_NAME" to="fromData"/>
+                <replace from="%ARGUMENT_TYPE" to="qt.core.QByteArray"/>
+                <replace from="%ARGUMENT_NAME" to="data"/>
+                <replace from="%OUT_ARGUMENT_NAME" to="data"/>
+                <replace from="boolean" to="QImage"/>
+                <replace from="final" to="static"/>
+            </insert-template>
+        </inject-code>
+		-->
+    </value-type>
+
+  <value-type name="QColormap" delete-in-main-thread="yes">
+    <modify-function signature="operator=(QColormap)" remove="all"/>
+    <extra-includes>
+        <include file-name="QColor" location="global"/>
+    </extra-includes>
+    <custom-constructor>
+    return new QColormap(*copy);
+    </custom-constructor>
+    <custom-destructor>
+    delete copy;
+    </custom-destructor>
+  </value-type>
+
+  <value-type name="QCursor" delete-in-main-thread="yes">
+     <extra-includes>
+        <include file-name="QPixmap" location="global"/>
+    </extra-includes>
+    <modify-function signature="operator=(QCursor)" remove="all"/>
+<!--  
+        <template name="gui.cursor_bitmap_getter">
+            <insert-template name="gui.getter_returning_nativepointer">
+                <replace from="%RETURN_TYPE" to="QBitmap"/>
+            </insert-template>
+        </template>
+
+        <modify-function signature="bitmap()const">
+            <access modifier="private"/>
+            <rename to="bitmap_private"/>
+        </modify-function>
+        <inject-code>
+            <insert-template name="gui.cursor_bitmap_getter">
+                <replace from="%FUNCTION_NAME" to="bitmap"/>
+            </insert-template>
+        </inject-code>
+
+        <modify-function signature="mask()const">
+            <access modifier="private"/>
+            <rename to="mask_private"/>
+        </modify-function>
+        <inject-code>
+            <insert-template name="gui.cursor_bitmap_getter">
+                <replace from="%FUNCTION_NAME" to="mask"/>
+            </insert-template>
+        </inject-code>
+		-->
+    </value-type>
+
+  <value-type name="QFontDatabase" delete-in-main-thread="yes">
+      <extra-includes>
+        <include file-name="QStringList" location="global"/>
+    </extra-includes>
+  </value-type>
+
+  <value-type name="QPen">
+      <extra-includes>
+        <include file-name="QBrush" location="global"/>
+    </extra-includes>
+
+    <modify-function signature="operator=(QPen)" remove="all"/>
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QPen___" quote-before-line="}// class"/>
+        </inject-code>
+    </value-type>
+
+  <value-type name="QBrush">
+    <modify-function signature="QBrush(Qt::GlobalColor, Qt::BrushStyle)" remove="all"/>
+    <modify-function signature="operator=(const QBrush &amp;)" remove="all"/>
+	<!-- restore later - abstract class not handled-->
+	<modify-function signature="gradient() const" remove="all"/>
+    
+	<extra-includes>
+        <include file-name="QPixmap" location="global"/>
+    </extra-includes>
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QBrush___" quote-before-line="}// class"/>
+        </inject-code>
+
+
+        <modify-function signature="gradient()const">
+            <!-- Use custom constructors already defined for gradient -->
+            <modify-argument index="0">
+                <replace-type modified-type="qt.gui.QGradient"/>
+                <conversion-rule class="native">
+                    jobject %out = qtjambi_from_object(__jni_env, %in, "QGradient", "com/trolltech/qt/gui/", "Lcom_trolltech_qt_gui_QGradient_2", true);
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>
+    </value-type>
+
+  <value-type name="QColor">
+    <modify-function signature="QColor(QColor::Spec)" remove="all"/>
+    <modify-function signature="operator=(QColor)" remove="all"/>
+    <modify-function signature="operator=(Qt::GlobalColor)" remove="all"/>
+
+    <modify-function signature="QColor(const char*)">
+        <remove/>
+    </modify-function>
+
+    <modify-function signature="getCmyk(int*,int*,int*,int*,int*)">
+        <remove/>
+    </modify-function>
+
+    <modify-function signature="getCmykF(double*,double*,double*,double*,double*)">
+        <remove/>
+    </modify-function>
+
+    <modify-function signature="getHsv(int*,int*,int*,int*)const">
+        <remove/>
+    </modify-function>
+
+    <modify-function signature="getHsvF(double*,double*,double*,double*)const">
+        <remove/>
+    </modify-function>
+
+    <modify-function signature="getRgb(int*,int*,int*,int*)const">
+        <remove/>
+    </modify-function>
+
+    <modify-function signature="getRgbF(double*,double*,double*,double*)const">
+        <remove/>
+    </modify-function>
+
+      <modify-function signature="dark(int)const" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="light(int)const" remove="all"/> <!--### Obsolete in 4.3-->
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QColor___" quote-before-line="}// class"/>
+        </inject-code>
+    </value-type>
+
+  <value-type name="QFontMetricsF" delete-in-main-thread="yes"> <!-- expense-cost="1" expense-limit="1000"> -->
+<!--    <custom-constructor>
+        return new QFontMetricsF(*copy);
+    </custom-constructor>
+    <custom-destructor>
+        delete copy;
+    </custom-destructor>
+    -->
+    <modify-function signature="operator!=(const QFontMetricsF &amp;)">
+        <remove/>
+    </modify-function>
+    <modify-function signature="operator==(const QFontMetricsF &amp;)">
+        <remove/>
+    </modify-function>
+
+    <modify-function signature="boundingRect(QRectF,int,QString,int,int*)const">
+        <access modifier="private"/>
+        <modify-argument index="4">
+            <remove-default-expression/>
+        </modify-argument>
+        <modify-argument index="5">
+            <remove-default-expression/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="operator=(QFontMetrics)" remove="all"/>
+    <modify-function signature="operator=(QFontMetricsF)" remove="all"/>
+
+    <modify-function signature="size(int,QString,int,int*)const">
+        <access modifier="private"/>
+        <modify-argument index="3">
+            <remove-default-expression/>
+        </modify-argument>
+        <modify-argument index="4">
+            <remove-default-expression/>
+        </modify-argument>
+    </modify-function>
+   
+        <template name="gui.fontmetricsf_boundingrect">
+            <insert-template name="gui.fontmetrics_tabarray_function">
+                <replace from="%RETURN_TYPE" to="qt.core.QRectF"/>
+                <replace from="%FUNCTION_NAME" to="boundingRect"/>
+                <replace from="%RECT_ARGUMENTS" to="%RECT_ARGUMENTS, "/>
+                <replace from="%RECT_CALL_ARGUMENTS" to="%RECT_CALL_ARGUMENTS, "/>
+            </insert-template>
+        </template>
+
+        <inject-code>
+            <insert-template name="gui.fontmetricsf_boundingrect">
+                <replace from="%RECT_ARGUMENTS" to="qt.core.QRectF rect"/>
+                <replace from="%RECT_CALL_ARGUMENTS" to="rect"/>
+            </insert-template>
+        </inject-code>
+
+        <inject-code>
+            <insert-template name="gui.fontmetrics_tabarray_function">
+                <replace from="%RETURN_TYPE" to="qt.core.QSizeF"/>
+                <replace from="%FUNCTION_NAME" to="size"/>
+                <replace from="%RECT_ARGUMENTS" to=""/>
+                <replace from="%RECT_CALL_ARGUMENTS" to=""/>
+            </insert-template>
+        </inject-code>
+    </value-type>
+   <value-type name="QTextOption::Tab"/>
+
+  <value-type name="QFontMetrics" delete-in-main-thread="yes"> <!-- <expense-cost="1" expense-limit="1000">
+    <custom-constructor>
+        return new QFontMetrics(*copy);
+    </custom-constructor>
+    <custom-destructor>
+        delete copy;
+    </custom-destructor>-->
+    <modify-function signature="operator!=(const QFontMetrics &amp;)">
+        <remove/>
+    </modify-function>
+    <modify-function signature="operator==(const QFontMetrics &amp;)">
+        <remove/>
+    </modify-function>
+
+    <modify-function signature="boundingRect(int,int,int,int,int,QString,int,int*)const">
+        <access modifier="private"/>
+        <modify-argument index="7">
+            <remove-default-expression/>
+        </modify-argument>
+        <modify-argument index="8">
+            <remove-default-expression/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="boundingRect(QRect,int,QString,int,int*)const">
+        <access modifier="private"/>
+        <modify-argument index="4">
+            <remove-default-expression/>
+        </modify-argument>
+        <modify-argument index="5">
+            <remove-default-expression/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="operator=(QFontMetrics)" remove="all"/>
+
+    <modify-function signature="size(int,QString,int,int*)const">
+        <access modifier="private"/>
+        <modify-argument index="3">
+            <remove-default-expression/>
+        </modify-argument>
+        <modify-argument index="4">
+            <remove-default-expression/>
+        </modify-argument>
+    </modify-function>
+
+ <!-- 
+        <template name="gui.fontmetrics_tabarray_function">
+        public final %RETURN_TYPE %FUNCTION_NAME(%RECT_ARGUMENTSint flags, String text, int tabStops, int tabArray[]) {
+            QNativePointer np = tabArray == null ? null : new QNativePointer(QNativePointer.Type.Int, tabArray.length + 1);
+            if (np != null) {
+                for (int i=0; i&lt;tabArray.length; ++i) np.setIntAt(i, tabArray[i]);
+                np.setIntAt(tabArray.length, 0);
+            }
+            return %FUNCTION_NAME(%RECT_CALL_ARGUMENTSflags, text, tabStops, np);
+        }
+
+        public final %RETURN_TYPE %FUNCTION_NAME(%RECT_ARGUMENTSint flags, String text, int tabStops) {
+            return %FUNCTION_NAME(%RECT_CALL_ARGUMENTSflags, text, tabStops, (int []) null);
+        }
+
+        public final %RETURN_TYPE %FUNCTION_NAME(%RECT_ARGUMENTSint flags, String text) {
+            return %FUNCTION_NAME(%RECT_CALL_ARGUMENTSflags, text, 0);
+        }
+        </template>
+
+        <template name="gui.fontmetrics_boundingrect">
+            <insert-template name="gui.fontmetrics_tabarray_function">
+                <replace from="%RETURN_TYPE" to="qt.core.QRect"/>
+                <replace from="%FUNCTION_NAME" to="boundingRect"/>
+                <replace from="%RECT_ARGUMENTS" to="%RECT_ARGUMENTS, "/>
+                <replace from="%RECT_CALL_ARGUMENTS" to="%RECT_CALL_ARGUMENTS, "/>
+            </insert-template>
+        </template>
+
+        <inject-code>
+            <insert-template name="gui.fontmetrics_boundingrect">
+                <replace from="%RECT_ARGUMENTS" to="int x, int y, int width, int height"/>
+                <replace from="%RECT_CALL_ARGUMENTS" to="x, y, width, height"/>
+            </insert-template>
+        </inject-code>
+
+        <inject-code>
+            <insert-template name="gui.fontmetrics_boundingrect">
+                <replace from="%RECT_ARGUMENTS" to="qt.core.QRect rect"/>
+                <replace from="%RECT_CALL_ARGUMENTS" to="rect"/>
+            </insert-template>
+        </inject-code>
+
+        <inject-code>
+            <insert-template name="gui.fontmetrics_tabarray_function">
+                <replace from="%RETURN_TYPE" to="qt.core.QSize"/>
+                <replace from="%FUNCTION_NAME" to="size"/>
+                <replace from="%RECT_ARGUMENTS" to=""/>
+                <replace from="%RECT_CALL_ARGUMENTS" to=""/>
+            </insert-template>
+        </inject-code>-->
+    </value-type>
+
+  <value-type name="QGradient" force-abstract="yes" polymorphic-base="yes" polymorphic-id-expression="%1-&gt;type() == QGradient::NoGradient">
+    <custom-constructor>
+    Q_UNUSED(copy)
+    qWarning("Copying empty QGradient object");
+    return new QGradient();
+    </custom-constructor>
+    <custom-destructor>
+    delete copy;
+    </custom-destructor>
+    <modify-function signature="operator==(const QGradient &amp;)">
+        <remove/>
+    </modify-function>
+  </value-type>
+
+  <value-type name="QLinearGradient" polymorphic-id-expression="%1-&gt;type() == QGradient::LinearGradient">
+    <custom-constructor>
+    QLinearGradient *lg = new QLinearGradient(copy-&gt;start(), copy-&gt;finalStop());
+    lg-&gt;setSpread(copy-&gt;spread());
+    lg-&gt;setStops(copy-&gt;stops());
+    return (void *) lg;
+    </custom-constructor>
+    <custom-destructor>
+    delete copy;
+    </custom-destructor>
+  </value-type>
+
+  <value-type name="QPrinterInfo">
+    <modify-function signature="operator=(const QPrinterInfo &amp;)" remove="all"/>
+  </value-type>
+
+  <interface-type name="QLayoutItem">
+    <modify-field name="align">
+      <rename to="align_"/>
+    </modify-field>
+  </interface-type>
+  <interface-type name="QPaintDevice">
+	
+	<modify-function signature="paintEngine () const">
+		<store-result/>
+	</modify-function>
+	
+  </interface-type>
+  
+  <interface-type name="QGraphicsItem" delete-in-main-thread="yes">
+	<modify-function signature="setExtension(QGraphicsItem::Extension,QVariant)" remove="all"/>
+	<modify-function signature="supportsExtension(QGraphicsItem::Extension)const" remove="all"/>
+	
+    <modify-function signature="matrix()const" remove="all"/>
+    <modify-function signature="resetMatrix()" remove="all"/>
+    <modify-function signature="sceneMatrix()const" remove="all"/>
+    <modify-function signature="setMatrix(QMatrix, bool)" remove="all"/>
+
+    <modify-function signature="children()const" remove="all"/>
+  <!--
+    <modify-function signature="setMatrix(QMatrix, bool)" remove="all"/>
+
+    <modify-function signature="paint(QPainter*,const QStyleOptionGraphicsItem*,QWidget*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="collidesWithItem(const QGraphicsItem*,Qt::ItemSelectionMode)const">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+
+    <modify-function signature="contextMenuEvent(QGraphicsSceneContextMenuEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="dragEnterEvent(QGraphicsSceneDragDropEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="dragLeaveEvent(QGraphicsSceneDragDropEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="dragMoveEvent(QGraphicsSceneDragDropEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="dropEvent(QGraphicsSceneDragDropEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="focusInEvent(QFocusEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="focusOutEvent(QFocusEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="hoverEnterEvent(QGraphicsSceneHoverEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="hoverLeaveEvent(QGraphicsSceneHoverEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="hoverMoveEvent(QGraphicsSceneHoverEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="inputMethodEvent(QInputMethodEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="isObscuredBy(const QGraphicsItem*)const">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="keyPressEvent(QKeyEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="keyReleaseEvent(QKeyEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="mouseDoubleClickEvent(QGraphicsSceneMouseEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="mouseMoveEvent(QGraphicsSceneMouseEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="mousePressEvent(QGraphicsSceneMouseEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="mouseReleaseEvent(QGraphicsSceneMouseEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="sceneEvent(QEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="sceneEventFilter(QGraphicsItem*,QEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+        <modify-argument index="2" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="wheelEvent(QGraphicsSceneWheelEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+
+    <modify-function signature="children()const" remove="all"/>
+    <modify-function signature="installSceneEventFilter(QGraphicsItem *)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="removeSceneEventFilter(QGraphicsItem *)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+  
+
+        <modify-function signature="QGraphicsItem(QGraphicsItem*,QGraphicsScene*)">
+            <inject-code position="end">
+                <argument-map index="1" meta-name="%1"/>
+            if (%1 != null)
+                disableGarbageCollection();
+            </inject-code>
+        </modify-function>
+
+        <modify-function signature="paint(QPainter *, const QStyleOptionGraphicsItem *, QWidget *)">
+            <modify-argument index="2">
+                <conversion-rule class="shell">
+                    jobject %out = qtjambi_from_object(__jni_env, %in, "QStyleOptionGraphicsItem", "com/trolltech/qt/gui/", "Lcom_trolltech_qt_gui_QStyleOption_2", true);
+                </conversion-rule>
+                <conversion-rule class="native">
+                    const QStyleOptionGraphicsItem *%out = (QStyleOptionGraphicsItem *) qtjambi_to_object(__jni_env, %in);
+                </conversion-rule>
+                <replace-type modified-type="qt.gui.QStyleOptionGraphicsItem"/>
+            </modify-argument>
+        </modify-function>
+
+        <modify-function signature="setGroup(QGraphicsItemGroup*)">
+            <modify-argument index="1">
+                <reference-count action="ignore"/>
+            </modify-argument>
+            <inject-code position="beginning">
+                qt.gui.QGraphicsItemGroup oldGroup = group();
+            </inject-code>
+            <inject-code position="end">
+                <argument-map index="1" meta-name="%1"/>
+            if (%1 == null &amp;&amp; oldGroup != null &amp;&amp; oldGroup.parentItem() == null)
+                reenableGarbageCollection();
+            else
+                disableGarbageCollection();
+            </inject-code>
+        </modify-function>
+
+        <modify-function signature="setParentItem(QGraphicsItem*)">
+            <modify-argument index="1">
+                <reference-count action="ignore"/>
+            </modify-argument>
+            <inject-code position="end">
+                <argument-map index="1" meta-name="%1"/>
+            if (%1 == null)
+                reenableGarbageCollection();
+            else
+                disableGarbageCollection();
+            </inject-code>
+        </modify-function> -->
+    </interface-type>
+
+  <object-type name="QAbstractGraphicsShapeItem" delete-in-main-thread="yes">
+  	<modify-function signature="setExtension(QGraphicsItem::Extension,QVariant)" remove="all"/>
+	<modify-function signature="supportsExtension(QGraphicsItem::Extension)const" remove="all"/>
+  <!--
+    <modify-function signature="QAbstractGraphicsShapeItem(QGraphicsItem*,QGraphicsScene*)">
+        <inject-code position="end">
+            <argument-map index="1" meta-name="%1"/>
+            if (%1 != null) disableGarbageCollection();
+        </inject-code>
+    </modify-function>
+   -->
+    <modify-function signature="matrix()const" remove="all"/>
+    <modify-function signature="resetMatrix()" remove="all"/>
+    <modify-function signature="sceneMatrix()const" remove="all"/>
+    <modify-function signature="setMatrix(QMatrix, bool)" remove="all"/>
+    <!--
+        <modify-function signature="QAbstractGraphicsShapeItem(QGraphicsItem*,QGraphicsScene*)">
+            <inject-code position="end">
+                <argument-map index="1" meta-name="%1"/>
+            if (%1 != null) disableGarbageCollection();
+            </inject-code>
+        </modify-function>
+    -->
+    </object-type>
+
+  <object-type name="QAbstractItemView">
+<!--     <extra-includes>
+        <include file-name="tango.util.container.HashMap" location="java"/>
+    </extra-includes>-->
+      <modify-function signature="update()" remove="all"/>
+      <modify-function signature="horizontalStepsPerItem()const" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="setHorizontalStepsPerItem(int)" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="setVerticalStepsPerItem(int)" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="verticalStepsPerItem()const" remove="all"/> <!--### Obsolete in 4.3-->
+
+      <modify-function signature="edit(QModelIndex,QAbstractItemView::EditTrigger,QEvent*)">
+        <modify-argument index="3" invalidate-after-use="yes"/>
+      </modify-function>
+      <modify-function signature="selectionCommand(QModelIndex,const QEvent*)const">
+        <modify-argument index="2" invalidate-after-use="yes"/>
+      </modify-function>
+
+<!--      <modify-function signature="QAbstractItemView(QWidget*)">
+        <inject-code class="java" position="end">
+    __rcDelegatesForColumns = new HashMap!(int, QAbstractItemDelegate);
+    __rcDelegatesForRows = new HashMap!(int, QAbstractItemDelegate);
+        </inject-code>
+      </modify-function>
+ --> 
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QAbstractItemView___" quote-before-line="}// class"/>
+        </inject-code>
+
+
+        <modify-function signature="setIndexWidget(const QModelIndex &amp;,QWidget *)">
+            <modify-argument index="2">
+                <!-- Safe to ignore because view reparents widget -->
+                <reference-count action="ignore"/>
+            </modify-argument>
+        </modify-function>
+        <modify-function signature="setItemDelegate(QAbstractItemDelegate *)">
+            <modify-argument index="1">
+                <reference-count action="set" variable-name="__rcItemDelegate"/>
+            </modify-argument>
+        </modify-function>
+        <modify-function signature="setModel(QAbstractItemModel *)">
+            <modify-argument index="1">
+                <reference-count action="set" variable-name="__rcItemModel"/>
+            </modify-argument>
+            <inject-code class="java" position="end">
+                // setModel() creates a new selection model for the object
+                __rcItemSelectionModel = null;
+            </inject-code>
+        </modify-function>
+        <modify-function signature="setSelectionModel(QItemSelectionModel *)">
+            <modify-argument index="1">
+                <no-null-pointer/>
+                <reference-count action="set" variable-name="__rcItemSelectionModel"/>
+            </modify-argument>
+        </modify-function>
+        <modify-function signature="setItemDelegateForColumn(int,QAbstractItemDelegate*)">
+            <modify-argument index="2">
+                <reference-count action="ignore"/>
+            </modify-argument>
+            <inject-code position="end">
+                <argument-map index="1" meta-name="%1"/>
+                <argument-map index="2" meta-name="%2"/>
+                if (%2 is null)
+                    __rcDelegatesForColumns.remove(%1);
+                else
+                    __rcDelegatesForColumns[%1] = %2;
+            </inject-code>
+        </modify-function>
+        <modify-function signature="setItemDelegateForRow(int,QAbstractItemDelegate*)">
+            <modify-argument index="2">
+                <reference-count action="ignore"/>
+            </modify-argument>
+            <inject-code position="end">
+                <argument-map index="1" meta-name="%1"/>
+                <argument-map index="2" meta-name="%2"/>
+                if (%2 is null)
+                    __rcDelegatesForRows.remove(%1);
+                else
+                    __rcDelegatesForRows[%1] = %2;
+            </inject-code>
+        </modify-function>
+    </object-type>
+
+  <object-type name="QAbstractPageSetupDialog"/>
+  <object-type name="QAbstractPrintDialog"/>
+  <object-type name="QAbstractSlider"/>
+  <object-type name="QAbstractTextDocumentLayout">
+    <modify-function signature="setPaintDevice(QPaintDevice*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcPaintDevice"/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="draw(QPainter*,QAbstractTextDocumentLayout::PaintContext)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="drawInlineObject(QPainter*,QRectF,QTextInlineObject,int,QTextFormat)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+
+  </object-type>
+  <object-type name="QAccessible">
+    <modify-function signature="initialize()" remove="all"/>
+    <modify-function signature="cleanup()" remove="all"/>
+    <modify-function signature="setRootObject(QObject *)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="queryAccessibleInterface(QObject *)">
+        <modify-argument index="return">
+            <define-ownership class="java" owner="java"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+  <object-type name="QAccessibleBridge">
+    <modify-function signature="setRootObject(QAccessibleInterface *)">
+        <modify-argument index="1">
+            <define-ownership class="shell" owner="java"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="notifyAccessibilityUpdate(int,QAccessibleInterface*,int)">
+        <modify-argument invalidate-after-use="yes" index="2"/>
+    </modify-function>
+  </object-type>
+  <object-type name="QAccessible2Interface"/>
+<!--  <object-type name="QAccessibleTableInterface">
+    <modify-function signature="qAccessibleTableCastHelper()" remove="all"/>
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QAccessibleTableInterface___" quote-before-line="}// class"/>
+        </inject-code>
+
+
+        <modify-function signature="cellAtIndex(int,int*,int*,int*,int*,bool*)">
+        <modify-argument index="2">
+            <remove-argument/>
+            <conversion-rule class="native">
+                int rowHolder;
+                int *%out = &amp;rowHolder;
+            </conversion-rule>
+            <conversion-rule class="shell">
+                // nothing
+            </conversion-rule>
+        </modify-argument>
+        <modify-argument index="3">
+            <remove-argument/>
+            <conversion-rule class="native">
+                int columnHolder;
+                int *%out = &amp;columnHolder;
+            </conversion-rule>
+            <conversion-rule class="shell">
+                // nothing
+            </conversion-rule>
+        </modify-argument>
+        <modify-argument index="4">
+            <remove-argument/>
+            <conversion-rule class="native">
+                int rowSpanHolder;
+                int *%out = &amp;rowSpanHolder;
+            </conversion-rule>
+            <conversion-rule class="shell">
+                // nothing
+            </conversion-rule>
+        </modify-argument>
+        <modify-argument index="5">
+            <remove-argument/>
+            <conversion-rule class="native">
+                int columnSpanHolder;
+                int *%out = &amp;columnSpanHolder;
+            </conversion-rule>
+            <conversion-rule class="shell">
+                // nothing
+            </conversion-rule>
+        </modify-argument>
+        <modify-argument index="6">
+            <remove-argument/>
+            <conversion-rule class="native">
+                bool isSelectedHolder = false;
+                bool *%out = &amp;isSelectedHolder;
+            </conversion-rule>
+            <conversion-rule class="shell">
+                // no conversion
+            </conversion-rule>
+        </modify-argument>
+        <modify-argument index="return">
+            <replace-type modified-type="qt.gui.QAccessibleTableInterface$CellAtIndex"/>
+            <conversion-rule class="native">
+                jobject %out = qtjambi_to_cellatindex(__jni_env, rowHolder, columnHolder, rowSpanHolder, columnSpanHolder, isSelectedHolder);
+            </conversion-rule>
+            <conversion-rule class="shell">
+                qtjambi_from_cellatindex(__jni_env, %in, %2, %3, %4, %5, %6);
+            </conversion-rule>
+        </modify-argument>
+        </modify-function>
+
+        <modify-function signature="selectedColumns(int,QList&lt;int&gt;*)">
+        <modify-argument index="2">
+            <replace-type modified-type="java.util.List&lt;Integer&gt;"/>
+            <conversion-rule class="shell">
+                StaticCache *sc = StaticCache::instance();
+                sc-&gt;resolveArrayList();
+                sc-&gt;resolveCollection();
+                sc-&gt;resolveInteger();
+
+                jobject columnsHolder = 0;
+                if (%in != 0) {
+                    columnsHolder = __jni_env-&gt;NewObject(sc-&gt;ArrayList.class_ref, sc-&gt;ArrayList.constructor, %in-&gt;size());
+                    qtjambi_exception_check(__jni_env);
+                    if (columnsHolder != 0) for (int i=0; i&lt;%in-&gt;size(); i++) {
+                        __jni_env-&gt;CallVoidMethod(columnsHolder, sc-&gt;Collection.add, qtjambi_from_int(__jni_env, %in-&gt;at(i)));
+                    }
+                    qtjambi_exception_check(__jni_env);
+                }
+                jobject %out = columnsHolder;
+            </conversion-rule>
+            <conversion-rule class="native">
+                StaticCache *sc = StaticCache::instance();
+                sc-&gt;resolveCollection();
+
+                QList&lt;int&gt; columnHolder;
+                if (%in != 0) {
+                    jobjectArray columnsAsArray = (jobjectArray) __jni_env-&gt;CallObjectMethod(%in, sc-&gt;Collection.toArray);
+                    if (columnsAsArray != 0) {
+                        int len = __jni_env-&gt;GetArrayLength(columnsAsArray);
+                        for (int i=0; i&lt;len; ++i) {
+                            columnHolder.append(qtjambi_to_int(__jni_env, __jni_env-&gt;GetObjectArrayElement(columnsAsArray, i)));
+                        }
+                    }
+                    qtjambi_exception_check(__jni_env);
+                }
+                QList&lt;int&gt; *%out = &amp;columnHolder;
+            </conversion-rule>
+        </modify-argument>
+        <modify-argument index="return">
+            <conversion-rule class="shell">
+                // Copy back
+                if (columnsHolder != 0) {
+                    jobjectArray columnsAsArray = (jobjectArray) __jni_env-&gt;CallObjectMethod(columnsHolder, sc-&gt;Collection.toArray);
+                    if (columnsAsArray != 0) {
+                        int len = __jni_env-&gt;GetArrayLength(columnsAsArray);
+                        %2-&gt;clear();
+                        for (int i=0; i&lt;len; ++i) {
+                            %2-&gt;append(qtjambi_to_int(__jni_env, __jni_env-&gt;GetObjectArrayElement(columnsAsArray, i)));
+                        }
+                    }
+                }
+
+                int %out = %in;
+            </conversion-rule>
+            <conversion-rule class="native">
+                // Copy back
+                if (%2 != 0) {
+                    __jni_env-&gt;CallVoidMethod(%2, sc-&gt;Collection.clear);
+                    for (int i=0; i&lt;columnHolder.size(); ++i) {
+                        __jni_env-&gt;CallVoidMethod(%2, sc-&gt;Collection.add, qtjambi_from_int(__jni_env, columnHolder.at(i)));
+                    }
+                    qtjambi_exception_check(__jni_env);
+                }
+
+                jint %out = %in;
+            </conversion-rule>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="selectedRows(int,QList&lt;int&gt;*)">
+        <modify-argument index="2">
+            <replace-type modified-type="java.util.List&lt;Integer&gt;"/>
+            <conversion-rule class="shell">
+                StaticCache *sc = StaticCache::instance();
+                sc-&gt;resolveArrayList();
+                sc-&gt;resolveCollection();
+                sc-&gt;resolveInteger();
+
+                jobject rowsHolder = 0;
+                if (%in != 0) {
+                    rowsHolder = __jni_env-&gt;NewObject(sc-&gt;ArrayList.class_ref, sc-&gt;ArrayList.constructor, %in-&gt;size());
+                    qtjambi_exception_check(__jni_env);
+                    if (rowsHolder != 0) for (int i=0; i&lt;%in-&gt;size(); i++) {
+                        __jni_env-&gt;CallVoidMethod(rowsHolder, sc-&gt;Collection.add, qtjambi_from_int(__jni_env, %in-&gt;at(i)));
+                    }
+                    qtjambi_exception_check(__jni_env);
+                }
+                jobject %out = rowsHolder;
+            </conversion-rule>
+            <conversion-rule class="native">
+                StaticCache *sc = StaticCache::instance();
+                sc-&gt;resolveCollection();
+
+                QList&lt;int&gt; rowsHolder;
+                if (%in != 0) {
+                    jobjectArray rowsAsArray = (jobjectArray) __jni_env-&gt;CallObjectMethod(%in, sc-&gt;Collection.toArray);
+                    if (rowsAsArray != 0) {
+                        int len = __jni_env-&gt;GetArrayLength(rowsAsArray);
+                        for (int i=0; i&lt;len; ++i) {
+                            rowsHolder.append(qtjambi_to_int(__jni_env, __jni_env-&gt;GetObjectArrayElement(rowsAsArray, i)));
+                        }
+                    }
+                    qtjambi_exception_check(__jni_env);
+                }
+                QList&lt;int&gt; *%out = &amp;rowsHolder;
+            </conversion-rule>
+        </modify-argument>
+        <modify-argument index="return">
+            <conversion-rule class="shell">
+                // Copy back
+                if (rowsHolder != 0) {
+                    jobjectArray rowsAsArray = (jobjectArray) __jni_env-&gt;CallObjectMethod(rowsHolder, sc-&gt;Collection.toArray);
+                    if (rowsAsArray != 0) {
+                        int len = __jni_env-&gt;GetArrayLength(rowsAsArray);
+                        %2-&gt;clear();
+                        for (int i=0; i&lt;len; ++i) {
+                            %2-&gt;append(qtjambi_to_int(__jni_env, __jni_env-&gt;GetObjectArrayElement(rowsAsArray, i)));
+                        }
+                    }
+                }
+
+                int %out = %in;
+            </conversion-rule>
+            <conversion-rule class="native">
+                // Copy back
+                if (%2 != 0) {
+                    __jni_env-&gt;CallVoidMethod(%2, sc-&gt;Collection.clear);
+                    for (int i=0; i&lt;rowsHolder.size(); ++i) {
+                        __jni_env-&gt;CallVoidMethod(%2, sc-&gt;Collection.add, qtjambi_from_int(__jni_env, rowsHolder.at(i)));
+                    }
+                    qtjambi_exception_check(__jni_env);
+                }
+
+                jint %out = %in;
+            </conversion-rule>
+        </modify-argument>
+        </modify-function>
+
+    </object-type>         -->
+
+  <object-type name="QAccessibleInterface">
+    <modify-function signature="indexOfChild(const QAccessibleInterface*)const">
+        <modify-argument invalidate-after-use="yes" index="1"/>
+    </modify-function>
+    <modify-function signature="relationTo(int,const QAccessibleInterface*,int)const">
+        <modify-argument invalidate-after-use="yes" index="2"/>
+    </modify-function>
+    
+<!--    <modify-function signature="navigate(QAccessible::RelationFlag,int,QAccessibleInterface**)const" remove="all"/> --><!-- TODO -->
+
+<!--  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QAccessibleInterface___" quote-before-line="}// class"/>
+        </inject-code>
+
+
+        <template name="gui.accessible_interface_to_target">
+        jclass __target_class = resolveClass(__jni_env, "QAccessibleInterface$Target", "com/trolltech/qt/gui/");
+        QTJAMBI_EXCEPTION_CHECK(__jni_env);
+        Q_ASSERT(__target_class);
+
+        jmethodID __target_constructor = resolveMethod(__jni_env, "&lt;init&gt;", "(ILcom/trolltech/qt/gui/QAccessibleInterface;)V", "QAccessibleInterface$Target", "com/trolltech/qt/gui/");
+        QTJAMBI_EXCEPTION_CHECK(__jni_env);
+        Q_ASSERT(__target_constructor);
+
+        jobject __java_interface = %TARGET != 0 ? qtjambi_from_object(__jni_env, %TARGET, "QAccessibleInterface$ConcreteWrapper", "com/trolltech/qt/gui/", true) : 0;
+
+        jobject %OUTPUT = __jni_env-&gt;NewObject(__target_class, __target_constructor, %CHILD_INDEX, __java_interface);
+        </template>
+
+        <modify-function signature="navigate(QAccessible::RelationFlag,int,QAccessibleInterface**)const">
+            <modify-argument index="3">
+                <remove-argument/>
+                <conversion-rule class="shell">
+                    // nothing
+                </conversion-rule>
+                <conversion-rule class="native">
+                    QAccessibleInterface *__qt_interface = 0;
+                    QAccessibleInterface **%out = &amp;__qt_interface;
+                </conversion-rule>
+            </modify-argument>
+
+            <modify-argument index="0">
+                <replace-type modified-type="qt.gui.QAccessibleInterface$Target"/>
+                <conversion-rule class="native">
+                    <insert-template name="gui.accessible_interface_to_target">
+                        <replace from="%TARGET" to="__qt_interface"/>
+                        <replace from="%CHILD_INDEX" to="%in"/>
+                        <replace from="%OUTPUT" to="%out"/>
+                    </insert-template>
+                </conversion-rule>
+                <conversion-rule class="shell">
+                    jfieldID __childIndex_id = resolveField(__jni_env, "childIndex", "I", "QAccessibleInterface$Target", "com/trolltech/qt/gui/");
+                    Q_ASSERT(__childIndex_id);
+
+                    jfieldID __target_id = resolveField(__jni_env, "target", "Lcom/trolltech/qt/gui/QAccessibleInterface;", "QAccessibleInterface$Target", "com/trolltech/qt/gui/");
+                    Q_ASSERT(__target_id);
+
+                    jint %out = __jni_env-&gt;GetIntField(%in, __childIndex_id);
+
+                    jobject __java_interface = __jni_env-&gt;GetObjectField(%in, __target_id);
+                    QtJambiLink *__qt_link = __java_interface != 0 ? QtJambiLink::findLink(__jni_env, __java_interface) : 0;
+                    if (__qt_link != 0) __qt_link-&gt;disableGarbageCollection(__jni_env, __java_interface);
+                    QAccessibleInterface *__qt_interface = __qt_link != 0 ? (QAccessibleInterface *) __qt_link-&gt;pointer() : 0;
+
+                    if (%3 != 0) *%3 = __qt_interface;
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>
+        -->
+    </object-type>
+  <object-type name="QAccessibleInterfaceEx"/>
+  <object-type name="QAccessibleObject"/>
+  <object-type name="QAccessibleObjectEx"/>
+  <object-type name="QAccessibleWidget"/>
+  <object-type name="QAccessibleWidgetEx"/>
+  <object-type name="QActionGroup">
+        <modify-function signature="addAction(QAction*)">
+            <modify-argument index="1">
+                <reference-count action="add" variable-name="__rcActions"/>
+            </modify-argument>
+<!--            <inject-code position="end">
+                <argument-map index="1" meta-name="%1"/>
+                qt.GeneratorUtilities.setField(%1, QAction.class, "__rcActionGroup", this);
+            </inject-code> -->
+        </modify-function>
+        <modify-function signature="removeAction(QAction*)">
+            <modify-argument index="1">
+                <reference-count action="remove" variable-name="__rcActions"/>
+            </modify-argument>
+<!--            <inject-code position="end">
+                <argument-map index="1" meta-name="%1"/>
+                qt.GeneratorUtilities.setField(%1, QAction.class, "__rcActionGroup", null);
+            </inject-code> -->
+        </modify-function>
+    </object-type>
+  <object-type name="QCDEStyle">
+      <modify-function signature="standardIconImplementation(QStyle::StandardPixmap, const QStyleOption *, const QWidget *)const" virtual-slot="yes"/>
+  </object-type>
+  <object-type name="QCheckBox">
+<!--    <modify-function signature="initStyleOption(QStyleOptionButton*)const">
+        <access modifier="private"/>
+    </modify-function>
+  
+        <inject-code>
+            <insert-template name="gui.init_style_option">
+                <replace from="%TYPE" to="QStyleOptionButton"/>
+            </insert-template>
+        </inject-code> -->
+    </object-type>
+  <object-type name="QCleanlooksStyle">
+    <modify-function signature="standardPixmap(QStyle::StandardPixmap,const QStyleOption*,const QWidget*)const" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="standardIconImplementation(QStyle::StandardPixmap, const QStyleOption *, const QWidget *)const" virtual-slot="yes"/>
+  </object-type>
+  <object-type name="QCommonStyle">
+      <modify-function signature="standardPixmap(QStyle::StandardPixmap, const QStyleOption*,const QWidget*)const" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="standardIconImplementation(QStyle::StandardPixmap, const QStyleOption *, const QWidget *)const" virtual-slot="yes"/>
+  </object-type>
+  <object-type name="QDataWidgetMapper">
+    <modify-function signature="addMapping(QWidget*,int)">
+        <modify-argument index="1">
+            <reference-count action="add" variable-name="__rcMappings"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="addMapping(QWidget*,int,QByteArray)">
+        <modify-argument index="1">
+            <reference-count action="add" variable-name="__rcMappings"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="removeMapping(QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="remove" variable-name="__rcMappings"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setItemDelegate(QAbstractItemDelegate*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcItemDelegate"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setModel(QAbstractItemModel*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcModel"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+  <object-type name="QDateEdit"/>
+  <object-type name="QDesktopServices">
+    <modify-function signature="setUrlHandler(const QString &amp;, QObject *, const char *)" access="private">
+        <modify-argument index="2">
+            <reference-count action="ignore"/> <!-- Handled in injected code -->
+        </modify-argument>
+    </modify-function>
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QDesktopServices___" quote-before-line="}// class"/>
+        </inject-code>
+
+    </object-type>
+  <object-type name="QDialog">
+<!--     <modify-function signature="setVisible(bool)" remove="all"/> // properties_d -->
+
+    <modify-function signature="setExtension(QWidget*)" remove="all"/>
+    <modify-function signature="exec()" access="non-final"/>
+    <modify-function signature="open()" virtual-slot="yes" />
+    <modify-function signature="extension()const" remove="all"/> <!--### Obsolete in 4.3-->
+    <modify-function signature="orientation()const" remove="all"/> <!--### Obsolete in 4.3-->
+    <modify-function signature="setOrientation(Qt::Orientation)" remove="all"/> <!--### Obsolete in 4.3-->
+    <modify-function signature="showExtension(bool)" remove="all"/> <!--### Obsolete in 4.3-->
+  </object-type>
+  <object-type name="QDialogButtonBox">
+    <modify-function signature="addButton(QAbstractButton*,QDialogButtonBox::ButtonRole)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="removeButton(QAbstractButton*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+  <object-type name="QDirModel">
+    <modify-function signature="parent()const" remove="java"/>
+    <modify-function signature="setIconProvider(QFileIconProvider*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcIconProvider"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+  <object-type name="QDoubleValidator"/>
+  <object-type name="QFileIconProvider"/>
+  <object-type name="QWizard">
+    <!-- ### Requires correct class name in meta object -->
+    <modify-function signature="setDefaultProperty(const char *, const char *, const char *)" remove="all"/>
+    <modify-function signature="addPage(QWizardPage*)">
+        <modify-argument index="1">
+            <no-null-pointer/>
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setButton(QWizard::WizardButton,QAbstractButton*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setPage(int,QWizardPage*)">
+        <modify-argument index="2">
+            <no-null-pointer/>
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+
+  </object-type>
+  <object-type name="QWizardPage">
+    <!-- ### Reduced functionality due to meta object having missing information -->
+    <modify-function signature="registerField(const QString &amp;, QWidget *, const char *, const char *)">
+        <access modifier="private"/>
+        <modify-argument index="3">
+            <remove-default-expression/>
+        </modify-argument>
+        <modify-argument index="4">
+            <remove-default-expression/>
+        </modify-argument>
+    </modify-function>
+
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QWizardPage___" quote-before-line="}// class"/>
+        </inject-code>
+
+    </object-type>
+  <object-type name="QFocusFrame">
+<!--    <modify-function signature="initStyleOption(QStyleOption*)const">
+        <access modifier="private"/>
+    </modify-function> -->
+    <modify-function signature="setWidget(QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcWidget"/>
+        </modify-argument>
+    </modify-function>
+<!--    <inject-code>
+        <insert-template name="gui.init_style_option">
+            <replace from="%TYPE" to="QStyleOption"/>
+        </insert-template>
+    </inject-code> -->
+  </object-type>
+  <object-type name="QFontComboBox"/>
+  <object-type name="QFontDialog">
+      <modify-function signature="open(QObject *, const char *)" remove="all"/> <!-- # TODO -->
+
+<!--        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QFontDialog___" quote-before-line="}// class"/>
+        </inject-code>
+
+        <template name="gui.fontdialog_get_font_general">
+            public static Result getFont(%FONT_ARGUMENT %COMMA QWidget parent %STRING_ARGUMENT) {
+                QNativePointer np = new QNativePointer(QNativePointer.Type.Boolean);
+                QFont returned = getFont(np, %FONT_CALL_ARGUMENT %COMMA parent %STRING_CALL_ARGUMENT);
+                return new Result(returned, np.booleanValue());
+            }
+        </template>
+
+        <template name="gui.fontdialog_get_font_nocaption">
+            <insert-template name="gui.fontdialog_get_font_general">
+                <replace from="%STRING_ARGUMENT" to=""/>
+                <replace from="%STRING_CALL_ARGUMENT" to=""/>
+            </insert-template>
+
+            public static Result getFont(%FONT_ARGUMENT) {
+                return getFont(%FONT_CALL_ARGUMENT %COMMA (QWidget) null);
+            }
+        </template>
+
+        <modify-function signature="getFont(bool*,QFont,QWidget*,QString)">
+            <access modifier="private"/>
+        </modify-function>
+        <inject-code>
+            <insert-template name="gui.fontdialog_get_font_general">
+                <replace from="%FONT_ARGUMENT %COMMA" to="QFont initial,"/>
+                <replace from="%STRING_ARGUMENT" to=", String caption"/>
+                <replace from="%FONT_CALL_ARGUMENT %COMMA" to="initial,"/>
+                <replace from="%STRING_CALL_ARGUMENT" to=", caption"/>
+            </insert-template>
+        </inject-code>
+
+        <modify-function signature="getFont(bool*,QWidget*)">
+            <access modifier="private"/>
+            <modify-argument index="2">
+                <remove-default-expression/>
+            </modify-argument>
+        </modify-function>
+        <inject-code>
+            <insert-template name="gui.fontdialog_get_font_nocaption">
+                <replace from="%FONT_ARGUMENT" to=""/>
+                <replace from="%COMMA" to=""/>
+                <replace from="%FONT_CALL_ARGUMENT" to=""/>
+            </insert-template>
+        </inject-code>
+
+        <modify-function signature="getFont(bool*,QFont,QWidget*)">
+            <access modifier="private"/>
+            <modify-argument index="3">
+                <remove-default-expression/>
+            </modify-argument>
+        </modify-function>
+        <inject-code>
+            <insert-template name="gui.fontdialog_get_font_nocaption">
+                <replace from="%FONT_ARGUMENT" to="QFont initial"/>
+                <replace from="%COMMA" to=", "/>
+                <replace from="%FONT_CALL_ARGUMENT" to="initial"/>
+            </insert-template>
+        </inject-code>
+        -->
+    </object-type>
+  <object-type name="QGraphicsEllipseItem" delete-in-main-thread="yes">
+  	<modify-function signature="setExtension(QGraphicsItem::Extension,QVariant)" remove="all"/>
+	<modify-function signature="supportsExtension(QGraphicsItem::Extension)const" remove="all"/>
+  <!--
+        <modify-function signature="QGraphicsEllipseItem(QGraphicsItem*,QGraphicsScene*)">
+            <inject-code position="end">
+                <argument-map index="1" meta-name="%1"/>
+                if (%1 != null) disableGarbageCollection();
+            </inject-code>
+        </modify-function>
+        <modify-function signature="QGraphicsEllipseItem(const QRectF &amp;,QGraphicsItem*,QGraphicsScene*)">
+            <inject-code position="end">
+                <argument-map index="2" meta-name="%2"/>
+                if (%2 != null) disableGarbageCollection();
+            </inject-code>
+        </modify-function>
+        <modify-function signature="QGraphicsEllipseItem(double,double,double,double,QGraphicsItem*,QGraphicsScene*)">
+            <inject-code position="end">
+                <argument-map index="5" meta-name="%5"/>
+                if (%5 != null) disableGarbageCollection();
+            </inject-code>
+        </modify-function>-->
+    </object-type>
+  <object-type name="QGraphicsItemAnimation">
+    <modify-function signature="setItem(QGraphicsItem*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcItem"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setTimeLine(QTimeLine*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcTimeLine"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+  <object-type name="QGraphicsItemGroup" delete-in-main-thread="yes">
+      <modify-function signature="matrix()const" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="resetMatrix()" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="sceneMatrix()const" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="setMatrix(QMatrix, bool)" remove="all"/> <!--### Obsolete in 4.3-->
+  <!--
+        <modify-function signature="QGraphicsItemGroup(QGraphicsItem*,QGraphicsScene*)">
+            <inject-code position="end">
+                <argument-map index="1" meta-name="%1"/>
+                if (%1 != null) disableGarbageCollection();
+            </inject-code>
+        </modify-function>
+        <modify-function signature="addToGroup(QGraphicsItem*)">
+            <modify-argument index="1">
+                <define-ownership class="java" owner="c++"/>
+            </modify-argument>
+        </modify-function>
+        <modify-function signature="removeFromGroup(QGraphicsItem*)">
+            <modify-argument index="1">
+                <reference-count action="ignore"/>
+            </modify-argument>
+            <inject-code position="end">
+                <argument-map index="1" meta-name="%1"/>
+                if (parentItem() == null)
+                %1.reenableGarbageCollection();
+            </inject-code>
+        </modify-function>
+    -->
+    </object-type>
+  <object-type name="QGraphicsLineItem" delete-in-main-thread="yes">
+      <modify-function signature="matrix()const" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="resetMatrix()" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="sceneMatrix()const" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="setMatrix(QMatrix, bool)" remove="all"/> <!--### Obsolete in 4.3-->
+      	<modify-function signature="setExtension(QGraphicsItem::Extension,QVariant)" remove="all"/>
+	<modify-function signature="supportsExtension(QGraphicsItem::Extension)const" remove="all"/>
+    <!--
+        <modify-function signature="QGraphicsLineItem(QGraphicsItem*,QGraphicsScene*)">
+            <inject-code position="end">
+                <argument-map index="1" meta-name="%1"/>
+                if (%1 != null) disableGarbageCollection();
+            </inject-code>
+        </modify-function>
+        <modify-function signature="QGraphicsLineItem(const QLineF &amp;,QGraphicsItem*,QGraphicsScene*)">
+            <inject-code position="end">
+                <argument-map index="2" meta-name="%2"/>
+                if (%2 != null) disableGarbageCollection();
+            </inject-code>
+        </modify-function>
+        <modify-function signature="QGraphicsLineItem(double,double,double,double,QGraphicsItem*,QGraphicsScene*)">
+            <inject-code position="end">
+                <argument-map index="5" meta-name="%5"/>
+                if (%5 != null) disableGarbageCollection();
+            </inject-code>
+        </modify-function>
+    -->
+    </object-type>
+  <object-type name="QGraphicsPathItem" delete-in-main-thread="yes">
+  	<modify-function signature="setExtension(QGraphicsItem::Extension,QVariant)" remove="all"/>
+	<modify-function signature="supportsExtension(QGraphicsItem::Extension)const" remove="all"/>
+  <!--
+        <modify-function signature="QGraphicsPathItem(QGraphicsItem*,QGraphicsScene*)">
+            <inject-code position="end">
+                <argument-map index="1" meta-name="%1"/>
+                if (%1 != null) disableGarbageCollection();
+            </inject-code>
+        </modify-function>
+        <modify-function signature="QGraphicsPathItem(const QPainterPath &amp;,QGraphicsItem*,QGraphicsScene*)">
+            <inject-code position="end">
+                <argument-map index="2" meta-name="%2"/>
+                if (%2 != null) disableGarbageCollection();
+            </inject-code>
+        </modify-function>
+    -->
+    </object-type>
+
+  <object-type name="QGraphicsPixmapItem" delete-in-main-thread="yes">
+      <modify-function signature="matrix()const" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="resetMatrix()" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="sceneMatrix()const" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="setMatrix(QMatrix, bool)" remove="all"/> <!--### Obsolete in 4.3-->
+      	<modify-function signature="setExtension(QGraphicsItem::Extension,QVariant)" remove="all"/>
+	<modify-function signature="supportsExtension(QGraphicsItem::Extension)const" remove="all"/>
+    <!--
+        <modify-function signature="QGraphicsPixmapItem(QGraphicsItem*,QGraphicsScene*)">
+            <inject-code position="end">
+                <argument-map index="1" meta-name="%1"/>
+                if (%1 != null) disableGarbageCollection();
+            </inject-code>
+        </modify-function>
+        <modify-function signature="QGraphicsPixmapItem(const QPixmap &amp;,QGraphicsItem*,QGraphicsScene*)">
+            <inject-code position="end">
+                <argument-map index="2" meta-name="%2"/>
+                if (%2 != null) disableGarbageCollection();
+            </inject-code>
+        </modify-function>
+    -->
+    </object-type>
+  <object-type name="QGraphicsPolygonItem" delete-in-main-thread="yes">
+  	<modify-function signature="setExtension(QGraphicsItem::Extension,QVariant)" remove="all"/>
+	<modify-function signature="supportsExtension(QGraphicsItem::Extension)const" remove="all"/>
+    <!--
+        <modify-function signature="QGraphicsPolygonItem(QGraphicsItem*,QGraphicsScene*)">
+            <inject-code position="end">
+                <argument-map index="1" meta-name="%1"/>
+                if (%1 != null) disableGarbageCollection();
+            </inject-code>
+        </modify-function>
+        <modify-function signature="QGraphicsPolygonItem(const QPolygonF &amp;,QGraphicsItem*,QGraphicsScene*)">
+            <inject-code position="end">
+                <argument-map index="2" meta-name="%2"/>
+                if (%2 != null) disableGarbageCollection();
+            </inject-code>
+        </modify-function>
+    -->
+    </object-type>
+  <object-type name="QGraphicsRectItem" delete-in-main-thread="yes">
+  	<modify-function signature="setExtension(QGraphicsItem::Extension,QVariant)" remove="all"/>
+	<modify-function signature="supportsExtension(QGraphicsItem::Extension)const" remove="all"/>
+  <!--
+        <modify-function signature="QGraphicsRectItem(QGraphicsItem*,QGraphicsScene*)">
+            <inject-code position="end">
+                <argument-map index="1" meta-name="%1"/>
+                if (%1 != null) disableGarbageCollection();
+            </inject-code>
+        </modify-function>
+        <modify-function signature="QGraphicsRectItem(double,double,double,double,QGraphicsItem*,QGraphicsScene*)">
+            <inject-code position="end">
+                <argument-map index="5" meta-name="%5"/>
+                if (%5 != null) disableGarbageCollection();
+            </inject-code>
+        </modify-function>
+        <modify-function signature="QGraphicsRectItem(const QRectF &amp;,QGraphicsItem*,QGraphicsScene*)">
+            <inject-code position="end">
+                <argument-map index="2" meta-name="%2"/>
+                if (%2 != null) disableGarbageCollection();
+            </inject-code>
+        </modify-function> -->
+    </object-type>
+  <object-type name="QGraphicsSimpleTextItem" delete-in-main-thread="yes">
+  	<modify-function signature="setExtension(QGraphicsItem::Extension,QVariant)" remove="all"/>
+	<modify-function signature="supportsExtension(QGraphicsItem::Extension)const" remove="all"/>
+    <!--
+        <modify-function signature="QGraphicsSimpleTextItem(QGraphicsItem*,QGraphicsScene*)">
+            <inject-code position="end">
+                <argument-map index="1" meta-name="%1"/>
+                if (%1 != null) disableGarbageCollection();
+            </inject-code>
+        </modify-function>
+        <modify-function signature="QGraphicsSimpleTextItem(const QString &amp;,QGraphicsItem*,QGraphicsScene*)">
+            <inject-code position="end">
+                <argument-map index="2" meta-name="%2"/>
+                if (%2 != null) disableGarbageCollection();
+            </inject-code>
+        </modify-function>
+    -->
+    </object-type>
+  <object-type name="QHBoxLayout"/>
+  <object-type name="QHeaderView">
+<!--    <modify-function signature="initStyleOption(QStyleOptionHeader*)const">
+        <access modifier="private"/>
+    </modify-function>
+-->
+    <modify-function signature="paintSection(QPainter*,QRect,int)const">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+<!--
+    <inject-code>
+        <insert-template name="gui.init_style_option">
+            <replace from="%TYPE" to="QStyleOptionHeader"/>
+        </insert-template>
+    </inject-code>-->
+    <modify-function signature="setModel(QAbstractItemModel*)">
+        <modify-argument index="1">
+            <reference-count declare-variable="QAbstractItemView" action="set" variable-name="__rcItemModel"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+  <object-type name="QIconEngine">
+    <modify-function signature="paint(QPainter*,QRect,QIcon::Mode,QIcon::State)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+  </object-type>
+  <object-type name="QIconEngineV2">
+        <extra-includes>
+            <include file-name="qt.core.QSize" location="java"/>
+        </extra-includes>
+    <modify-function signature="read(QDataStream&amp;)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="write(QDataStream&amp;)const">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+
+    <modify-function signature="virtual_hook(int,void*)" remove="all"/>
+
+    <modify-function signature="clone()const">
+        <remove class="java"/>
+<!--        <modify-argument index="return">
+            <define-ownership class="shell" owner="c++"/>
+        </modify-argument>-->
+    </modify-function>
+	
+    <inject-code>
+        <import-file name="typesystem_gui-java.java" quote-after-line="class QIconEngineV2___" quote-before-line="}// class"/>
+    </inject-code>
+  </object-type>
+  <object-type name="QImageWriter">
+  <modify-function signature="setDevice(QIODevice*)">
+    <modify-argument index="1">
+        <reference-count action="set" variable-name="__rcDevice"/>
+    </modify-argument>
+  </modify-function>
+      <modify-function signature="description()const" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="setDescription(QString)" remove="all"/> <!--### Obsolete in 4.3-->
+  </object-type>
+  <object-type name="QInputContextFactory"/>
+  <object-type name="QIntValidator"/>
+  <object-type name="QItemDelegate">
+    <modify-function signature="doLayout(QStyleOptionViewItem,QRect*,QRect*,QRect*,bool)const">
+        <remove/>
+    </modify-function>
+
+    <modify-function signature="drawCheck(QPainter*,QStyleOptionViewItem,QRect,Qt::CheckState)const">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="drawDecoration(QPainter*,QStyleOptionViewItem,QRect,QPixmap)const">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="drawDisplay(QPainter*,QStyleOptionViewItem,QRect,QString)const">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="drawFocus(QPainter*,QStyleOptionViewItem,QRect)const">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+
+
+    <modify-function signature="selected(QPixmap,QPalette,bool)const">
+        <remove/>
+    </modify-function>
+    <modify-function signature="setItemEditorFactory(QItemEditorFactory*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcItemEditorFactory"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setEditorData(QWidget*,QModelIndex)const">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setModelData(QWidget*,QAbstractItemModel*,QModelIndex)const">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+
+  </object-type>
+  <object-type name="QItemEditorCreatorBase"/>
+  <object-type name="QItemEditorFactory">
+    <modify-function signature="registerEditor(QVariant::Type, QItemEditorCreatorBase *)">
+        <modify-argument index="2">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setDefaultFactory(QItemEditorFactory *)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcDefaultItemEditorFactory"/>
+        </modify-argument>
+    </modify-function>
+  
+        <modify-function signature="setDefaultFactory(QItemEditorFactory*)">
+            <modify-argument index="1">
+                <define-ownership class="java" owner="c++"/>
+            </modify-argument>
+        </modify-function>
+    </object-type>
+  <object-type name="QItemSelectionModel"/>
+  <object-type name="QTreeModel"/>
+  <object-type name="QListView"/>
+  <object-type name="QColumnView">
+    <modify-function signature="setPreviewWidget(QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setModel(QAbstractItemModel*)">
+        <modify-argument index="1">
+            <reference-count declare-variable="QAbstractItemView" action="set" variable-name="__rcItemModel"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setSelectionModel(QItemSelectionModel*)">
+        <modify-argument index="1">
+            <no-null-pointer/>
+            <reference-count declare-variable="QAbstractItemView" action="set" variable-name="__rcItemSelectionModel"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+  <object-type name="QMainWindow">
+    <modify-function signature="addDockWidget(Qt::DockWidgetArea,QDockWidget*,Qt::Orientation)">
+        <modify-argument index="2">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="addDockWidget(Qt::DockWidgetArea,QDockWidget*)">
+        <modify-argument index="2">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="addToolBar(QToolBar*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="addToolBar(Qt::ToolBarArea,QToolBar*)">
+        <modify-argument index="2">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertToolBar(QToolBar*,QToolBar*)">
+        <modify-argument index="2">
+            <reference-count action="ignore"/>
+        </modify-argument>
+        <modify-argument index="2">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertToolBarBreak(QToolBar*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="removeDockWidget(QDockWidget*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="removeToolBar(QToolBar*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="removeToolBarBreak(QToolBar*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setCentralWidget(QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setMenuBar(QMenuBar*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setMenuWidget(QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setStatusBar(QStatusBar*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+
+  </object-type>
+  <object-type name="QMdiArea">
+    <modify-function signature="addSubWindow(QWidget*,QFlags&lt;Qt::WindowType&gt;)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="removeSubWindow(QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="setActiveSubWindow(QMdiSubWindow*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="setupViewport(QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+
+  </object-type>
+  <object-type name="QMdiSubWindow">
+    <modify-function signature="setSystemMenu(QMenu*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setWidget(QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+  <object-type name="QMenu">
+    <modify-function signature="addAction(QAction *)" remove="all"/>
+    <modify-function signature="addMenu(QMenu*)">
+        <modify-argument index="1">
+            <reference-count action="add" variable-name="__rcMenus"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertMenu(QAction*,QMenu*)">
+        <modify-argument index="2">
+            <reference-count action="add" variable-name="__rcMenus"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertSeparator(QAction*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setActiveAction(QAction*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setDefaultAction(QAction*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setNoReplayFor(QWidget*)">
+        <remove/>
+    </modify-function>
+    <modify-function signature="initStyleOption(QStyleOptionMenuItem*,const QAction*)const">
+        <access modifier="private"/>
+    </modify-function>
+
+    <modify-function signature="addAction(QString,const QObject*,const char*,QKeySequence)">
+        <remove/>
+    </modify-function>
+
+    <modify-function signature="addAction(QIcon,QString,const QObject*,const char*,QKeySequence)">
+        <remove/>
+    </modify-function>
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QMenu___" quote-before-line="}// class"/>
+        </inject-code>
+
+<!--
+        <template name="gui.addAction">
+        public final QAction addAction(%EXTRA String text, Object receiver, String method %END_EXTRA) {
+            QAction returned = addAction(%CALL_EXTRA text %END_CALL_EXTRA);
+            %POST_CALL
+            returned.triggered.connect(receiver, method);
+
+            return returned;
+        }
+
+        public final QAction addAction(%EXTRA String text, qt.QSignalEmitter.AbstractSignal signal %END_EXTRA) {
+            QAction returned = addAction(%CALL_EXTRA text %END_CALL_EXTRA);
+            %POST_CALL
+            returned.triggered.connect(signal);
+            return returned;
+        }
+        </template>
+
+        <template name="gui.addAction_with_shortcut">
+            <insert-template name="gui.addAction">
+                <replace from="%POST_CALL" to="returned.setShortcut(shortcut);"/>
+                <replace from=" %END_EXTRA" to=", QKeySequence shortcut"/>
+                <replace from=" %END_CALL_EXTRA" to=""/>
+            </insert-template>
+
+        public final QAction addAction(%EXTRA String text, Object receiver, String method) {
+            return addAction(%CALL_EXTRA text, receiver, method, new QKeySequence(0));
+        }
+
+        public final QAction addAction(%EXTRA String text, qt.QSignalEmitter.AbstractSignal signal) {
+            return addAction(%CALL_EXTRA text, signal, new QKeySequence(0));
+        }
+        </template>
+
+        <inject-code>
+            <insert-template name="gui.addAction_with_shortcut">
+                <replace from="%EXTRA " to=""/>
+                <replace from="%CALL_EXTRA " to=""/>
+            </insert-template>
+        </inject-code>
+
+        <inject-code>
+            <insert-template name="gui.addAction_with_shortcut">
+                <replace from="%EXTRA" to="QIcon icon,"/>
+                <replace from="%CALL_EXTRA" to="icon,"/>
+            </insert-template>
+        </inject-code>-->
+    </object-type>
+
+  <object-type name="QMenuBar">
+    <modify-function signature="addAction(QAction *)" remove="all"/>
+    <modify-function signature="addAction(QString,const QObject*,const char*)">
+        <remove/>
+    </modify-function>
+
+    <modify-function signature="addMenu(QMenu*)">
+        <modify-argument index="1">
+            <reference-count action="add" variable-name="__rcMenus"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertMenu(QAction*,QMenu*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+        <modify-argument index="2">
+            <reference-count action="add" variable-name="__rcMenus"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertSeparator(QAction*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setActiveAction(QAction*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setCornerWidget(QWidget*,Qt::Corner)    ">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QMenuBar___" quote-before-line="}// class"/>
+        </inject-code>
+        <inject-code>
+            <insert-template name="gui.addAction">
+                <replace from="%POST_CALL" to=""/>
+                <replace from=" %END_EXTRA" to=""/>
+                <replace from=" %END_CALL_EXTRA" to=""/>
+                <replace from="%EXTRA " to=""/>
+                <replace from="%CALL_EXTRA " to=""/>
+            </insert-template>
+        </inject-code>
+
+
+    </object-type>
+  <object-type name="QMotifStyle">
+    <modify-function signature="standardPixmap(QStyle::StandardPixmap, const QStyleOption*, const QWidget*)const" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="standardIconImplementation(QStyle::StandardPixmap, const QStyleOption *, const QWidget *)const" virtual-slot="yes"/>
+  </object-type>
+  <object-type name="QPainterPathStroker"/>
+
+  <object-type name="QPictureIO">
+      <modify-function signature="QPictureIO(QIODevice*,const char*)">
+        <access modifier="private"/>
+         <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcDevice"/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="setIODevice(QIODevice*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcDevice"/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="QPictureIO(QString,const char*)">
+        <access modifier="private"/>
+    </modify-function>
+
+    <modify-function signature="format()const">
+        <access modifier="private"/>
+        <rename to="format_private"/>
+    </modify-function>
+
+    <modify-function signature="parameters()const">
+        <access modifier="private"/>
+        <rename to="parameters_private"/>
+    </modify-function>
+
+    <modify-function signature="setFormat(const char*)">
+        <access modifier="private"/>
+    </modify-function>
+
+    <modify-function signature="setParameters(const char*)">
+        <access modifier="private"/>
+    </modify-function>
+
+  
+        <inject-code>
+
+        public this(QIODevice ioDevice, string format) {
+            this(ioDevice, toStringz(format));
+        }
+        
+        public this(string fileName, string format) {
+            this(fileName, toStringz(format));
+        }
+
+            <insert-template name="core.return_string_instead_of_char*">
+                <replace from="%FUNCTION_NAME" to="format"/>
+            </insert-template>
+            <insert-template name="core.return_string_instead_of_char*">
+                <replace from="%FUNCTION_NAME" to="parameters"/>
+            </insert-template>
+            <insert-template name="core.call_with_string_instead_of_char*">
+                <replace from="%FUNCTION_NAME" to="setFormat"/>
+                <replace from="%ARG_NAME" to="format"/>
+            </insert-template>
+            <insert-template name="core.call_with_string_instead_of_char*">
+                <replace from="%FUNCTION_NAME" to="setParameters"/>
+                <replace from="%ARG_NAME" to="parameters"/>
+            </insert-template>
+        </inject-code>
+    </object-type>
+
+  <object-type name="QPixmapCache">
+    <modify-function signature="find(QString)">
+        <remove/>
+    </modify-function>
+<!--
+    <modify-function signature="find(QString,QPixmap&amp;)">
+        <access modifier="private"/>
+    </modify-function>
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QPixmapCache___" quote-before-line="}// class"/>
+        </inject-code>
+-->
+    </object-type>
+  <object-type name="QPlastiqueStyle">
+    <modify-function signature="standardPixmap(QStyle::StandardPixmap, const QStyleOption*, const QWidget*)const" remove="all"/> <!--### Obsolete in 4.3-->
+    <modify-function signature="standardIconImplementation(QStyle::StandardPixmap, const QStyleOption *, const QWidget *)const" virtual-slot="yes"/>
+    <modify-function signature="layoutSpacingImplementation(QSizePolicy::ControlType, QSizePolicy::ControlType, Qt::Orientation, const QStyleOption *, const QWidget *) const" virtual-slot="yes"/>
+  </object-type>
+  <object-type name="QPrintDialog">
+      <modify-function signature="accepted(QPrinter *)">
+          <rename to="accepted_printer"/>
+      </modify-function>
+      <modify-function signature="accepted()" remove="all"/>
+      <modify-function signature="open(QObject *, const char *)" remove="all"/> <!-- # TODO -->
+
+  </object-type>
+  <object-type name="QPrintEngine"/>
+  <object-type name="QProgressBar">
+<!--    <modify-function signature="initStyleOption(QStyleOptionProgressBar*)const">
+        <access modifier="private"/>
+    </modify-function>
+  
+        <inject-code>
+            <insert-template name="gui.init_style_option">
+                <replace from="%TYPE" to="QStyleOptionProgressBar"/>
+            </insert-template>
+        </inject-code> -->
+    </object-type>
+  <object-type name="QPushButton">
+<!--    <modify-function signature="initStyleOption(QStyleOptionButton*)const">
+        <access modifier="private"/>
+    </modify-function>
+-->
+<!--     <modify-function signature="setDefault(bool)" rename="default_"/> // properties_d -->
+
+
+    <modify-function signature="setMenu(QMenu*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcMenu"/>
+        </modify-argument>
+    </modify-function>
+  <!--
+        <inject-code>
+            <insert-template name="gui.init_style_option">
+                <replace from="%TYPE" to="QStyleOptionButton"/>
+            </insert-template>
+        </inject-code> -->
+    </object-type>
+  <object-type name="QRegExpValidator"/>
+  <object-type name="QScrollArea">
+    <modify-function signature="setWidget(QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+  <object-type name="QSessionManager"/>
+  <object-type name="QShortcut">
+    <modify-function signature="QShortcut(QKeySequence,QWidget*,const char*,const char*,Qt::ShortcutContext)">
+        <access modifier="private"/>
+        <modify-argument index="3">
+            <remove-default-expression/>
+        </modify-argument>
+        <modify-argument index="4">
+            <remove-default-expression/>
+        </modify-argument>
+        <modify-argument index="5">
+            <remove-default-expression/>
+        </modify-argument>
+    </modify-function>
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QShortcut___" quote-before-line="}// class"/>
+        </inject-code>
+
+    </object-type>
+  <object-type name="QSizeGrip"/>
+  <object-type name="QSound"/>
+  <object-type name="QSpacerItem">
+  </object-type>
+  <object-type name="QStandardItem">
+    <modify-function signature="operator=(QStandardItem)" remove="all"/>
+    <modify-function signature="operator&lt;(QStandardItem)const">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="read(QDataStream&amp;)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="write(QDataStream&amp;)const">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+
+  
+        <modify-function signature="appendColumn(const QList&lt;QStandardItem *&gt; &amp;)">
+            <modify-argument index="1">
+                <define-ownership class="java" owner="c++"/>
+            </modify-argument>
+        </modify-function>
+        <modify-function signature="appendRow(const QList&lt;QStandardItem *&gt; &amp;)">
+            <modify-argument index="1">
+                <define-ownership class="java" owner="c++"/>
+            </modify-argument>
+        </modify-function>
+        <modify-function signature="appendRow(QStandardItem *)">
+            <modify-argument index="1">
+                <define-ownership class="java" owner="c++"/>
+            </modify-argument>
+        </modify-function>
+        <modify-function signature="insertColumn(int, const QList&lt;QStandardItem *&gt; &amp;)">
+            <modify-argument index="2">
+                <define-ownership class="java" owner="c++"/>
+            </modify-argument>
+        </modify-function>
+        <modify-function signature="insertRow(int, const QList&lt;QStandardItem *&gt; &amp;)">
+            <modify-argument index="2">
+                <define-ownership class="java" owner="c++"/>
+            </modify-argument>
+        </modify-function>
+        <modify-function signature="insertRow(int, QStandardItem *)">
+            <modify-argument index="2">
+                <define-ownership class="java" owner="c++"/>
+            </modify-argument>
+        </modify-function>
+        <modify-function signature="setChild(int,int,QStandardItem *)">
+            <modify-argument index="3">
+                <define-ownership class="java" owner="c++"/>
+            </modify-argument>
+        </modify-function>
+        <modify-function signature="setChild(int,QStandardItem *)">
+            <modify-argument index="2">
+                <define-ownership class="java" owner="c++"/>
+            </modify-argument>
+        </modify-function>
+        <modify-function signature="takeChild(int,int)">
+            <modify-argument index="return">
+                <define-ownership class="java" owner="default"/>
+            </modify-argument>
+        </modify-function>
+        <modify-function signature="takeColumn(int)">
+            <modify-argument index="return">
+                <define-ownership class="java" owner="default"/>
+            </modify-argument>
+        </modify-function>
+        <modify-function signature="takeRow(int)">
+            <modify-argument index="return">
+                <define-ownership class="java" owner="default"/>
+            </modify-argument>
+        </modify-function>
+        <modify-function signature="clone()const">
+            <modify-argument index="return">
+                <define-ownership class="shell" owner="c++"/>
+            </modify-argument>
+        </modify-function>
+    </object-type>
+  <object-type name="QStatusBar">
+    <modify-function signature="addPermanentWidget(QWidget *, int)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="addWidget(QWidget *, int)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="removeWidget(QWidget *)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertPermanentWidget(int, QWidget *, int)">
+        <modify-argument index="2">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertWidget(int, QWidget *, int)">
+        <modify-argument index="2">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+  <object-type name="QStringListModel"/>
+  <object-type name="QStyleFactory"/>
+  <object-type name="QStyleHintReturn">
+        <modify-field name="version">
+          <rename to="version_"/>
+      </modify-field>
+  </object-type>
+  <object-type name="QStyleHintReturnVariant"/>
+  <object-type name="QStyleHintReturnMask"/>
+  <object-type name="QStylePainter" delete-in-main-thread="yes"/>
+  <object-type name="QSyntaxHighlighter">
+    <modify-function signature="setCurrentBlockUserData(QTextBlockUserData*)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setDocument(QTextDocument*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcDocument"/>
+        </modify-argument>
+    </modify-function>
+
+  </object-type>
+  <object-type name="QSystemTrayIcon">
+    <modify-function signature="setContextMenu(QMenu*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcContextMenu"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+  <object-type name="QTableView">
+    <modify-function signature="setHorizontalHeader(QHeaderView*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setVerticalHeader(QHeaderView*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setModel(QAbstractItemModel*)">
+        <modify-argument index="1">
+            <reference-count declare-variable="QAbstractItemView" action="set" variable-name="__rcItemModel"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setSelectionModel(QItemSelectionModel*)">
+        <modify-argument index="1">
+            <no-null-pointer/>
+            <reference-count declare-variable="QAbstractItemView" action="set" variable-name="__rcItemSelectionModel"/>
+        </modify-argument>
+    </modify-function>
+
+      <modify-function signature="sortByColumn(int)" remove="all"/> <!--### Obsolete in 4.3-->
+  </object-type>
+  <object-type name="QTextBlockGroup" delete-in-main-thread="yes"/>
+  <object-type name="QTextBlockUserData" delete-in-main-thread="yes"/>
+  <object-type name="QTextItem" delete-in-main-thread="yes"/>
+  <object-type name="QTextList" delete-in-main-thread="yes">
+    <modify-function signature="format()const" rename="textListFormat"/>
+
+      <modify-function signature="isEmpty()const" remove="all"/> <!--### Obsolete in 4.3-->
+  </object-type>
+  <object-type name="QTextObject" delete-in-main-thread="yes"/>
+  <object-type name="QTextObjectInterface" delete-in-main-thread="yes">
+    <modify-function signature="drawObject(QPainter*,QRectF,QTextDocument*,int,QTextFormat)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+  </object-type>
+  <object-type name="QTimeEdit"/>
+  <object-type name="QToolBox">
+    <modify-function signature="addItem(QWidget*,QString)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="addItem(QWidget*,QIcon,QString)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertItem(int,QWidget*,QIcon,QString)">
+        <modify-argument index="2">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertItem(int,QWidget*,QString)">
+        <modify-argument index="2">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setCurrentWidget(QWidget*)  ">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+  <object-type name="QToolButton">
+<!--    <modify-function signature="initStyleOption(QStyleOptionToolButton*)const">
+        <access modifier="private"/>
+    </modify-function>
+-->
+    <modify-function signature="setDefaultAction(QAction *)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcDefaultAction"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setMenu(QMenu *)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcMenu"/>
+        </modify-argument>
+    </modify-function>
+  <!--
+        <inject-code>
+            <insert-template name="gui.init_style_option">
+                <replace from="%TYPE" to="QStyleOptionToolButton"/>
+            </insert-template>
+        </inject-code> -->
+    </object-type>
+  <object-type name="QToolTip"/>
+  <object-type name="QTreeView">
+
+    <modify-function signature="drawBranches(QPainter*,QRect,QModelIndex)const">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="drawRow(QPainter*,QStyleOptionViewItem,QModelIndex)const">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+
+    <modify-function signature="setHeader(QHeaderView*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+   </modify-function>
+   <modify-function signature="setModel(QAbstractItemModel*)">
+        <modify-argument index="1">
+            <reference-count declare-variable="QAbstractItemView" action="set" variable-name="__rcItemModel"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setSelectionModel(QItemSelectionModel*)">
+        <modify-argument index="1">
+            <no-null-pointer/>
+            <reference-count declare-variable="QAbstractItemView" action="set" variable-name="__rcItemSelectionModel"/>
+        </modify-argument>
+    </modify-function>
+
+      <modify-function signature="sortByColumn(int)" remove="all"/> <!--### Obsolete in 4.3-->
+  </object-type>
+  <object-type name="QUndoCommand">
+    <modify-function signature="mergeWith(const QUndoCommand*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+  </object-type>
+  <object-type name="QUndoGroup">
+    <modify-function signature="addStack(QUndoStack*)">
+        <modify-argument index="1">
+            <reference-count action="add" variable-name="__rcStacks"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="removeStack(QUndoStack*)">
+        <modify-argument index="1">
+            <reference-count action="remove" variable-name="__rcStacks"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setActiveStack(QUndoStack*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+
+  <object-type name="QUndoStack">
+        <modify-function signature="push(QUndoCommand *)">
+            <modify-argument index="1">
+                <define-ownership class="java" owner="c++"/>
+            </modify-argument>
+        </modify-function>
+    </object-type>
+
+  <object-type name="QUndoView">
+    <modify-function signature="setGroup(QUndoGroup *)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcGroupOrStack"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setStack(QUndoStack *)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcGroupOrStack"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="QUndoView(QUndoGroup *,QWidget *)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcGroupOrStack"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="QUndoView(QUndoStack *,QWidget *)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcGroupOrStack"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+  <object-type name="QVBoxLayout"/>
+  <object-type name="QValidator">
+<!--        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QValidator___" quote-before-line="}// class"/>
+        </inject-code>
+
+
+        <modify-function signature="fixup(QString&amp;)const">
+            <modify-argument index="1">
+                <replace-type modified-type="java.lang.String"/>
+                <conversion-rule class="shell">
+                    jobject %out = (jobject) qtjambi_from_qstring(__jni_env, %in);
+                </conversion-rule>
+                <conversion-rule class="native">
+                    QString %out = qtjambi_to_qstring(__jni_env, (jstring) %in);
+                    QString *__qt_converted = &amp;%out;
+                </conversion-rule>
+            </modify-argument>
+
+            <modify-argument index="0">
+                <replace-type modified-type="java.lang.String"/>
+                <conversion-rule class="native">
+                    jobject %out = (jobject) qtjambi_from_qstring(__jni_env, *__qt_converted);
+                </conversion-rule>
+                <conversion-rule class="shell">
+                    %1 = qtjambi_to_qstring(__jni_env, (jstring) %in);
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>
+
+        <modify-function signature="validate(QString&amp;,int&amp;)const">
+            <modify-argument index="1">
+                <replace-type modified-type="qt.gui.QValidator$QValidationData"/>
+                <conversion-rule class="shell">
+                    <insert-template name="gui.convert_validationdata_to_java">
+                        <replace from="%STRING" to="%1"/>
+                        <replace from="%POS" to="%2"/>
+                    </insert-template>
+                </conversion-rule>
+                <conversion-rule class="native">
+                    <insert-template name="gui.convert_validationdata_to_string"/>
+                </conversion-rule>
+            </modify-argument>
+
+            <modify-argument index="2">
+                <remove-argument/>
+                <conversion-rule class="shell">
+                    // nothing needed
+                </conversion-rule>
+                <conversion-rule class="native">
+                    <insert-template name="gui.convert_validationdata_to_pos">
+                        <replace from="%VALIDATIONDATA" to="%1"/>
+                    </insert-template>
+                </conversion-rule>
+            </modify-argument>
+
+            <modify-argument index="return">
+                <conversion-rule class="native">
+                    <insert-template name="gui.cleanup_validationdata_from_java"/>
+                    jint %out = %in;
+                </conversion-rule>
+                <conversion-rule class="shell">
+                    <insert-template name="gui.cleanup_validationdata_to_java">
+                        <replace from="%STRING" to="%1"/>
+                        <replace from="%POS" to="%2"/>
+                    </insert-template>
+                    QValidator::State %out = (QValidator::State) qtjambi_to_enumerator(__jni_env, %in);
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>
+-->
+  </object-type>
+  <object-type name="QWhatsThis"/>
+  <object-type name="QWidgetAction">
+    <modify-function signature="createWidget(QWidget*)">
+        <modify-argument index="return">
+            <define-ownership class="shell" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+  
+        <modify-function signature="setDefaultWidget(QWidget*)">
+            <modify-argument index="1">
+                <define-ownership class="java" owner="c++"/>
+            </modify-argument>
+        </modify-function>
+    </object-type>
+  <object-type name="QWidgetItem"/>
+  <object-type name="QWindowsStyle">
+      <modify-function signature="standardPixmap(QStyle::StandardPixmap, const QStyleOption*, const QWidget*)const" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="standardIconImplementation(QStyle::StandardPixmap, const QStyleOption *, const QWidget *)const" virtual-slot="yes"/>
+  </object-type>
+  <object-type name="QWorkspace">
+    <modify-function signature="addWindow(QWidget*,QFlags&lt;Qt::WindowType&gt;)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setActiveWindow(QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+
+  <object-type name="QActionEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::ActionAdded || %1-&gt;type() == QEvent::ActionRemoved || %1-&gt;type() == QEvent::ActionChanged">
+        <extra-includes>
+            <include file-name="qt.core.QObject" location="java"/>
+        </extra-includes>
+  </object-type>
+  <object-type name="QClipboardEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::Clipboard"/>
+  <object-type name="QCloseEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::Close"/>
+  <object-type name="QContextMenuEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::ContextMenu"/>
+  <object-type name="QDragEnterEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::DragEnter"/>
+  <object-type name="QDragLeaveEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::DragLeave"/>
+  <object-type name="QDragMoveEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::DragMove">
+    <modify-function signature="accept()" remove="all"/>
+    <modify-function signature="ignore()" remove="all"/>
+  </object-type>
+  <object-type name="QDropEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::Drop">
+    <modify-function signature="encodedData(const char*)const">
+        <remove/>
+    </modify-function>
+
+    <modify-function signature="format(int)const">
+        <remove/>
+    </modify-function>
+
+    <modify-function signature="provides(const char*)const">
+        <remove/>
+    </modify-function>
+    <modify-field name="fmts" read="false" write="false"/> <!-- obsolete in Qt4 -->
+
+  </object-type>
+  <object-type name="QFileOpenEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::FileOpen"/>
+  <object-type name="QFocusEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::FocusIn || %1-&gt;type() == QEvent::FocusOut">
+        <modify-function signature="reason()const">
+            <remove/>
+        </modify-function>
+  </object-type>
+
+  <object-type name="QGraphicsSceneContextMenuEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::GraphicsSceneContextMenu"/>
+  <object-type name="QGraphicsSceneDragDropEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::GraphicsSceneDragEnter || %1-&gt;type() == QEvent::GraphicsSceneDragLeave || %1-&gt;type() == QEvent::GraphicsSceneDragMove || %1-&gt;type() == QEvent::GraphicsSceneDrop">
+    <modify-function signature="setMimeData(const QMimeData *)">
+        <remove/>
+    </modify-function>
+    <modify-function signature="setSource(QWidget *)">
+        <remove/>
+    </modify-function>
+  </object-type>
+  <object-type name="QGraphicsSceneEvent">
+    <modify-function signature="setWidget(QWidget *)">
+        <remove/>
+    </modify-function>
+  </object-type>
+  <object-type name="QGraphicsSceneMoveEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::GraphicsSceneMove"/>
+  <object-type name="QGraphicsSceneResizeEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::GraphicsSceneResize"/>
+  <object-type name="QGraphicsSceneHelpEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::GraphicsSceneHelp"/>
+  <object-type name="QGraphicsSceneHoverEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::GraphicsSceneHoverEnter || %1-&gt;type() == QEvent::GraphicsSceneHoverLeave || %1-&gt;type() == QEvent::GraphicsSceneHoverMove"/>
+  <object-type name="QGraphicsSceneMouseEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::GraphicsSceneMouseDoubleClick || %1-&gt;type() == QEvent::GraphicsSceneMouseMove || %1-&gt;type() == QEvent::GraphicsSceneMousePress || %1-&gt;type() == QEvent::GraphicsSceneMouseRelease"/>
+  <object-type name="QGraphicsSceneWheelEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::GraphicsSceneWheel"/>
+  <object-type name="QHelpEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::ToolTip || %1-&gt;type() == QEvent::WhatsThis"/>
+  <object-type name="QHideEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::Hide"/>
+  <object-type name="QHoverEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::HoverEnter || %1-&gt;type() == QEvent::HoverLeave || %1-&gt;type() == QEvent::HoverMove"/>
+  <object-type name="QIconDragEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::IconDrag"/>
+  <object-type name="QInputMethodEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::InputMethod"/>
+  <object-type name="QMoveEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::Move"/>
+  <object-type name="QResizeEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::Resize"/>
+  <object-type name="QShortcutEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::Shortcut">
+        <!-- All these have const overloads that are used instead -->
+        <modify-function signature="isAmbiguous()">
+            <remove/>
+        </modify-function>
+        <modify-function signature="shortcutId()">
+            <remove/>
+        </modify-function>
+        <modify-function signature="key()">
+            <remove/>
+        </modify-function>
+  </object-type>
+  <object-type name="QShowEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::Show"/>
+  <object-type name="QStatusTipEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::StatusTip"/>
+  <object-type name="QTabletEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::TabletMove || %1-&gt;type() == QEvent::TabletPress || %1-&gt;type() == QEvent::TabletRelease"/>
+  <object-type name="QToolBarChangeEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::ToolBarChange"/>
+  <object-type name="QWhatsThisClickedEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::WhatsThisClicked"/>
+  <object-type name="QWheelEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::Wheel"/>
+  <object-type name="QWindowStateChangeEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::WindowStateChange"/>
+  <object-type name="QDragResponseEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::DragResponse"/>
+  <object-type name="QInputEvent">
+    <modify-function signature="modifiers()const" access="non-final"/>
+  </object-type>
+  <object-type name="QKeyEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::KeyPress || %1-&gt;type() == QEvent::KeyRelease">
+	<modify-function signature="createExtendedKeyEvent(QEvent::Type,int,QFlags&lt;Qt::KeyboardModifier&gt;,uint,uint,uint,const QString &amp;,bool,unsigned short)" remove="all"/>
+  </object-type>
+  <object-type name="QMouseEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::MouseButtonDblClick || %1-&gt;type() == QEvent::MouseButtonPress || %1-&gt;type() == QEvent::MouseButtonRelease || %1-&gt;type() == QEvent::MouseMove">
+  	<modify-function signature="createExtendedMouseEvent(QEvent::Type, const QPointF &amp;, const QPoint &amp;, Qt::MouseButton, QFlags&lt;Qt::MouseButton&gt;, QFlags&lt;Qt::KeyboardModifier&gt;)" remove="all"/>
+  </object-type>
+  <object-type name="QPaintEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::Paint"/>
+  <object-type name="QAccessibleEvent" polymorphic-id-expression="%1-&gt;type() == QEvent::AccessibilityDescription || %1-&gt;type() == QEvent::AccessibilityHelp"/>
+
+  <object-type name="QAbstractButton">
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QAbstractButton___" quote-before-line="}// class"/>
+        </inject-code>
+
+    </object-type>
+
+  <object-type name="QStyle">
+      <modify-function signature="standardIconImplementation(QStyle::StandardPixmap, const QStyleOption *, const QWidget *)const" virtual-slot="yes"/>
+      <modify-function signature="layoutSpacingImplementation(QSizePolicy::ControlType, QSizePolicy::ControlType, Qt::Orientation, const QStyleOption *, const QWidget *) const" virtual-slot="yes"/>
+
+      <modify-function signature="drawComplexControl(QStyle::ComplexControl,const QStyleOptionComplex*,QPainter*,const QWidget*)const">
+        <modify-argument index="3" invalidate-after-use="yes"/>
+      </modify-function>
+      <modify-function signature="drawControl(QStyle::ControlElement,const QStyleOption*,QPainter*,const QWidget*)const">
+        <modify-argument index="3" invalidate-after-use="yes"/>
+      </modify-function>
+      <modify-function signature="drawPrimitive(QStyle::PrimitiveElement,const QStyleOption*,QPainter*,const QWidget*)const">
+        <modify-argument index="3" invalidate-after-use="yes"/>
+      </modify-function>
+      <modify-function signature="styleHint(QStyle::StyleHint,const QStyleOption*,const QWidget*,QStyleHintReturn*)const">
+        <modify-argument index="4" invalidate-after-use="yes"/>
+      </modify-function>
+      <modify-function signature="drawItemPixmap(QPainter*,QRect,int,QPixmap)const">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+      </modify-function>
+      <modify-function signature="drawItemText(QPainter*,QRect,int,QPalette,bool,QString,QPalette::ColorRole)const">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+      </modify-function>
+
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QStyle___" quote-before-line="}// class"/>
+        </inject-code>
+		<!--
+        <modify-function signature="drawControl(QStyle::ControlElement, const QStyleOption *, QPainter *, const QWidget *) const">
+            <modify-argument index="2">
+                <replace-type modified-type="qt.gui.QStyleOption"/>
+                <conversion-rule class="shell">
+                    <insert-template name="gui::qstyleoption_from_object"/>
+                </conversion-rule>
+                <conversion-rule class="native">
+                    <insert-template name="gui::qstyleoption_to_object"/>
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>
+
+        <modify-function signature="drawComplexControl(QStyle::ComplexControl, const QStyleOptionComplex *, QPainter *, const QWidget *) const">
+            <modify-argument index="2">
+                <replace-type modified-type="qt.gui.QStyleOptionComplex"/>
+                <conversion-rule class="shell">
+                    <insert-template name="gui::qstyleoptioncomplex_from_object"/>
+                </conversion-rule>
+                <conversion-rule class="native">
+                    <insert-template name="gui::qstyleoption_to_object"/>
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>
+
+        <modify-function signature="drawPrimitive(QStyle::PrimitiveElement, const QStyleOption *, QPainter *, const QWidget *) const">
+            <modify-argument index="2">
+                <replace-type modified-type="qt.gui.QStyleOption"/>
+                <conversion-rule class="shell">
+                    <insert-template name="gui::qstyleoption_from_object"/>
+                </conversion-rule>
+                <conversion-rule class="native">
+                    <insert-template name="gui::qstyleoption_to_object"/>
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>
+
+        <modify-function signature="hitTestComplexControl(QStyle::ComplexControl, const QStyleOptionComplex *, const QPoint &amp;, const QWidget *) const">
+            <modify-argument index="2">
+                <replace-type modified-type="qt.gui.QStyleOptionComplex"/>
+                <conversion-rule class="shell">
+                    <insert-template name="gui::qstyleoptioncomplex_from_object"/>
+                </conversion-rule>
+                <conversion-rule class="native">
+                    <insert-template name="gui::qstyleoption_to_object"/>
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>
+
+        <modify-function signature="pixelMetric(QStyle::PixelMetric, const QStyleOption *, const QWidget *) const">
+            <modify-argument index="2">
+                <replace-type modified-type="qt.gui.QStyleOption"/>
+                <conversion-rule class="shell">
+                    <insert-template name="gui::qstyleoption_from_object"/>
+                </conversion-rule>
+                <conversion-rule class="native">
+                    <insert-template name="gui::qstyleoption_to_object"/>
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>
+
+        <modify-function signature="sizeFromContents(QStyle::ContentsType, const QStyleOption *, const QSize &amp;, const QWidget *) const">
+            <modify-argument index="2">
+                <replace-type modified-type="qt.gui.QStyleOption"/>
+                <conversion-rule class="shell">
+                    <insert-template name="gui::qstyleoption_from_object"/>
+                </conversion-rule>
+                <conversion-rule class="native">
+                    <insert-template name="gui::qstyleoption_to_object"/>
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>
+
+        <modify-function signature="standardIcon(QStyle::StandardPixmap, const QStyleOption *, const QWidget *) const">
+            <modify-argument index="2">
+                <replace-type modified-type="qt.gui.QStyleOption"/>
+                <conversion-rule class="shell">
+                    <insert-template name="gui::qstyleoption_from_object"/>
+                </conversion-rule>
+                <conversion-rule class="native">
+                    <insert-template name="gui::qstyleoption_to_object"/>
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>
+
+        <modify-function signature="standardPixmap(QStyle::StandardPixmap, const QStyleOption *, const QWidget *) const">
+            <modify-argument index="2">
+                <replace-type modified-type="qt.gui.QStyleOption"/>
+                <conversion-rule class="shell">
+                    <insert-template name="gui::qstyleoption_from_object"/>
+                </conversion-rule>
+                <conversion-rule class="native">
+                    <insert-template name="gui::qstyleoption_to_object"/>
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>
+
+        <modify-function signature="styleHint(QStyle::StyleHint, const QStyleOption *, const QWidget *, QStyleHintReturn *) const">
+            <modify-argument index="2">
+                <replace-type modified-type="qt.gui.QStyleOption"/>
+                <conversion-rule class="shell">
+                    <insert-template name="gui::qstyleoption_from_object"/>
+                </conversion-rule>
+                <conversion-rule class="native">
+                    <insert-template name="gui::qstyleoption_to_object"/>
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>
+
+        <modify-function signature="subControlRect(QStyle::ComplexControl, const QStyleOptionComplex *, QStyle::SubControl, const QWidget *) const">
+            <modify-argument index="2">
+                <replace-type modified-type="qt.gui.QStyleOptionComplex"/>
+                <conversion-rule class="shell">
+                    <insert-template name="gui::qstyleoptioncomplex_from_object"/>
+                </conversion-rule>
+                <conversion-rule class="native">
+                    QStyleOptionComplex *%out = (QStyleOptionComplex *) qtjambi_to_object(__jni_env, %in);
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>
+
+        <modify-function signature="subElementRect(QStyle::SubElement, const QStyleOption *, const QWidget *) const">
+            <modify-argument index="2">
+                <replace-type modified-type="qt.gui.QStyleOption"/>
+                <conversion-rule class="shell">
+                    <insert-template name="gui::qstyleoption_from_object"/>
+                </conversion-rule>
+                <conversion-rule class="native">
+                    <insert-template name="gui::qstyleoption_to_object"/>
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>
+
+        <modify-function signature="generatedIconPixmap(QIcon::Mode,QPixmap,const QStyleOption*)const">
+            <modify-argument index="3">
+                <replace-type modified-type="qt.gui.QStyleOption"/>
+                <conversion-rule class="shell">
+                    <insert-template name="gui::qstyleoption_from_object"/>
+                </conversion-rule>
+                <conversion-rule class="native">
+                    <insert-template name="gui::qstyleoption_to_object"/>
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>
+
+        <modify-function signature="polish(QPalette&amp;)">
+            <modify-argument index="1">
+                <replace-type modified-type="qt.gui.QPalette"/>
+                <conversion-rule class="shell">
+                    jobject %out = qtjambi_from_object(__jni_env, &amp;%in, "QPalette", "com/trolltech/qt/gui/", false);
+                    jobject __invalidate_me = %out;
+                </conversion-rule>
+                <conversion-rule class="native">
+                    QtJambiLink *link = QtJambiLink::findLink(__jni_env, %in);
+                    Q_ASSERT(link != 0);
+
+                    QPalette dummy;
+                    QPalette &amp;%out = link != 0 ? * (QPalette *) link-&gt;pointer() : dummy;
+                </conversion-rule>
+            </modify-argument>
+            <modify-argument index="0">
+                <conversion-rule class="shell">
+                    if (__invalidate_me != 0)
+                    qtjambi_invalidate_object(__jni_env, __invalidate_me);
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>
+
+        <modify-function signature="standardIconImplementation(QStyle::StandardPixmap,const QStyleOption*,const QWidget*)const">
+            <modify-argument index="2">
+                <replace-type modified-type="qt.gui.QStyleOption"/>
+                <conversion-rule class="shell">
+                    <insert-template name="gui::qstyleoption_from_object"/>
+                </conversion-rule>
+                <conversion-rule class="native">
+                    <insert-template name="gui::qstyleoption_to_object"/>
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>
+-->
+        <modify-function signature="combinedLayoutSpacing(QFlags&lt;QSizePolicy::ControlType&gt;,QFlags&lt;QSizePolicy::ControlType&gt;,Qt::Orientation,QStyleOption*,QWidget*)const">
+            <access modifier="private"/>
+            <modify-argument index="4">
+                <remove-default-expression/>
+            </modify-argument>
+            <modify-argument index="5">
+                <remove-default-expression/>
+            </modify-argument>
+        </modify-function>
+
+
+        <modify-function signature="layoutSpacing(QSizePolicy::ControlType,QSizePolicy::ControlType,Qt::Orientation,const QStyleOption*,const QWidget*)const">
+            <access modifier="private"/>
+            <modify-argument index="4">
+                <remove-default-expression/>
+            </modify-argument>
+            <modify-argument index="5">
+                <remove-default-expression/>
+            </modify-argument>
+        </modify-function>
+
+<!--
+        <modify-function signature="layoutSpacingImplementation(QSizePolicy::ControlType,QSizePolicy::ControlType,Qt::Orientation,const QStyleOption*,const QWidget*)const">
+            <modify-argument index="4">
+                <replace-type modified-type="qt.gui.QStyleOption"/>
+                <conversion-rule class="shell">
+                    <insert-template name="gui::qstyleoption_from_object"/>
+                </conversion-rule>
+                <conversion-rule class="native">
+                    <insert-template name="gui::qstyleoption_to_object"/>
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>
+-->
+
+
+        <inject-code class="shell-declaration"> <!-- Remove in Qt 5 -->
+            QPixmap standardPixmap(QStyle::StandardPixmap, const QStyleOption*, const QWidget*) const { return QPixmap(); }
+        </inject-code>
+
+        <modify-function signature="standardPixmap(QStyle::StandardPixmap, const QStyleOption*, const QWidget*)const" remove="all"/> <!--### Obsolete in 4.3-->
+    </object-type>
+
+  <object-type name="QColorDialog">
+    <modify-function signature="open(QObject *, const char *)" remove="all"/> <!-- # TODO -->
+
+    <modify-function signature="getColor(const QColor &amp;, QWidget *)">
+      <modify-argument index="1">
+        <replace-default-expression with="QColor.White"/>
+      </modify-argument>
+    </modify-function>
+    <modify-function signature="getRgba(uint,bool*,QWidget*)">
+        <remove/>
+    </modify-function>
+  </object-type>
+
+  <object-type name="QLayout">
+  
+    <modify-function signature="addItem(QLayoutItem*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+
+    <modify-function signature="setSpacing(int)" rename="setWidgetSpacing"/>
+    <modify-function signature="spacing()const" rename="widgetSpacing"/>
+    <modify-function signature="addWidget(QWidget *)">
+        <modify-argument index="1">
+            <no-null-pointer/>
+            <reference-count variable-name="__rcWidgets" action="add"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="addChildWidget(QWidget *)">
+        <modify-argument index="1">
+            <no-null-pointer/>
+            <reference-count variable-name="__rcWidgets" action="add"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="removeWidget(QWidget *)">
+        <modify-argument index="1">
+            <no-null-pointer/>
+            <reference-count variable-name="__rcWidgets" action="remove"/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="setAlignment(QWidget*,QFlags&lt;Qt::AlignmentFlag&gt;)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setAlignment(QLayout*,QFlags&lt;Qt::AlignmentFlag&gt;)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setMenuBar(QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcMenuBar"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="getContentsMargins(int*,int*,int*,int*)const">
+        <access modifier="private"/>
+    </modify-function>
+
+    <modify-function signature="margin()const" remove="all"/> <!--### Obsolete in 4.3-->
+    <!-- <modify-function signature="setMargin(int)" remove="all"/> --> <!--### Obsolete in 4.3-->
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QLayout___" quote-before-line="}// class"/>
+        </inject-code>
+        <modify-function signature="addItem(QLayoutItem *)">
+            <modify-argument index="1">
+                <define-ownership class="java" owner="c++"/>
+            </modify-argument>
+        </modify-function>
+        <modify-function signature="removeItem(QLayoutItem *)">
+            <modify-argument index="1">
+                <define-ownership class="java" owner="default"/>
+            </modify-argument>
+        </modify-function>
+        <modify-function signature="addChildLayout(QLayout *)">
+            <modify-argument index="1">
+                <define-ownership class="java" owner="c++"/>
+            </modify-argument>
+        </modify-function>
+        <modify-function signature="addChildLayout(QLayout *)">
+            <modify-argument index="1">
+                <define-ownership class="java" owner="c++"/>
+            </modify-argument>
+        </modify-function>
+        <modify-function signature="itemAt(int) const">
+<!--            <modify-argument index="return">
+                <define-ownership class="java" owner="c++"/>
+            </modify-argument>-->
+        </modify-function>
+
+
+    </object-type>
+
+  <object-type name="QStackedLayout">
+    <modify-function signature="addItem(QLayoutItem *)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="itemAt(int) const">
+        <modify-argument index="return">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="addWidget(QWidget *)">
+        <rename to="addStackedWidget"/>
+        <modify-argument index="1">
+            <no-null-pointer/>
+            <reference-count action="add" declare-variable="QLayout" variable-name="__rcWidgets"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertWidget(int,QWidget*)">
+        <modify-argument index="2">
+            <no-null-pointer/>
+            <reference-count action="add" declare-variable="QLayout" variable-name="__rcWidgets"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setCurrentWidget(QWidget*)">
+        <modify-argument index="1">
+            <!-- Safe to ignore because current widget must have been added to layout already -->
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+
+  <object-type name="QBoxLayout">
+    <modify-function signature="addWidget(QWidget *, int, QFlags&lt;Qt::AlignmentFlag&gt;)">
+        <modify-argument index="1">
+            <no-null-pointer/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="addItem(QLayoutItem *)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertLayout(int, QLayout *, int)">
+        <modify-argument index="2">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertItem(int, QLayoutItem *)">
+        <modify-argument index="2">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="addSpacerItem(QSpacerItem*)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertSpacerItem(int,QSpacerItem*)">
+        <modify-argument index="2">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="addLayout(QLayout *, int)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="addWidget(QWidget*,int,QFlags&lt;Qt::AlignmentFlag&gt;)">
+        <modify-argument index="1">
+            <reference-count declare-variable="QLayout" action="add" variable-name="__rcWidgets"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertWidget(int,QWidget*,int,QFlags&lt;Qt::AlignmentFlag&gt;)">
+        <modify-argument index="2">
+            <reference-count declare-variable="QLayout" action="add" variable-name="__rcWidgets"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setStretchFactor(QWidget*,int)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setStretchFactor(QLayout*,int)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+
+  <object-type name="QGridLayout">
+    <modify-function signature="addWidget(QWidget *)" remove="all"/>
+    <modify-function signature="addItem(QLayoutItem *)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="addItem(QLayoutItem *, int, int, int, int, QFlags&lt;Qt::AlignmentFlag&gt;)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="addLayout(QLayout *, int, int, QFlags&lt;Qt::AlignmentFlag&gt;)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="addLayout(QLayout *, int, int, int, int, QFlags&lt;Qt::AlignmentFlag&gt;)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+        <modify-function signature="addWidget(QWidget*,int,int,QFlags&lt;Qt::AlignmentFlag&gt;)">
+            <modify-argument index="1">
+                <reference-count declare-variable="QLayout" action="add" variable-name="__rcWidgets"/>
+            </modify-argument>
+        </modify-function>
+        <modify-function signature="addWidget(QWidget*,int,int,int,int,QFlags&lt;Qt::AlignmentFlag&gt;)">
+            <modify-argument index="1">
+                <reference-count declare-variable="QLayout" action="add" variable-name="__rcWidgets"/>
+            </modify-argument>
+        </modify-function>
+        <modify-function signature="addWidget(QWidget*)">
+            <modify-argument index="1">
+                <reference-count declare-variable="QLayout" action="add" variable-name="__rcWidgets"/>
+            </modify-argument>
+        </modify-function>
+    <modify-function signature="getItemPosition(int,int*,int*,int*,int*)">
+        <access modifier="private"/>
+    </modify-function>
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QGridLayout___" quote-before-line="}// class"/>
+        </inject-code>
+
+
+    </object-type>
+
+  <object-type name="QGraphicsView">
+    <extra-includes>
+      <include file-name="QPainterPath" location="global"/>
+      <include file-name="QVarLengthArray" location="global"/>
+    </extra-includes>
+    <modify-function signature="fitInView(const QGraphicsItem *, Qt::AspectRatioMode)">
+        <modify-argument index="1">
+            <no-null-pointer/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setupViewport(QWidget *)" access="non-final"/>
+    <modify-function signature="setScene(QGraphicsScene*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcScene"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setupViewport(QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="drawBackground(QPainter*,QRectF)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="drawForeground(QPainter*,QRectF)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="drawItems(QPainter*,int,QGraphicsItem**,const QStyleOptionGraphicsItem*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+
+    <modify-function signature="drawItems(QPainter*,int,QGraphicsItem**,const QStyleOptionGraphicsItem*)" remove="all" />
+
+<!--
+    <modify-function signature="drawItems(QPainter*,int,QGraphicsItem**,const QStyleOptionGraphicsItem*)">
+        <modify-argument index="2">
+            <remove-argument/>
+            <conversion-rule class="shell">
+                // nothing
+            </conversion-rule>
+            <conversion-rule class="native">
+                <insert-template name="core.get_array_length">
+                    <replace from="%ARRAY" to="%3"/>
+                </insert-template>
+                int __length = %out;
+            </conversion-rule>
+        </modify-argument>
+
+        <modify-argument index="3">
+            <replace-type modified-type="qt.gui.QGraphicsItemInterface[]"/>
+            <conversion-rule class="shell">
+                <insert-template name="gui.convert_graphicsitem_array_to_java">
+                    <replace from="%LENGTH" to="%2"/>
+                </insert-template>
+                jobjectArray graphicsItemArrayHolder = %out;
+            </conversion-rule>
+            <conversion-rule class="native">
+                <insert-template name="gui.convert_graphicsitem_array_from_java"/>
+            </conversion-rule>
+        </modify-argument>
+
+        <modify-argument index="4">
+            <replace-type modified-type="qt.gui.QStyleOptionGraphicsItem[]"/>
+            <conversion-rule class="shell">
+                <insert-template name="gui.convert_styleoptiongraphicsitem_array_to_java">
+                    <replace from="%LENGTH" to="%2"/>
+                </insert-template>
+                jobjectArray styleOptionArrayHolder = %out;
+            </conversion-rule>
+            <conversion-rule class="native">
+                <insert-template name="gui.convert_styleoptiongraphicsitem_array_from_java"/>
+            </conversion-rule>
+        </modify-argument>
+
+        <modify-argument index="return">
+            <conversion-rule class="shell">
+                qtjambi_invalidate_array(__jni_env, styleOptionArrayHolder);
+                qtjambi_invalidate_array(__jni_env, graphicsItemArrayHolder);
+            </conversion-rule>
+        </modify-argument>
+
+    </modify-function>
+    -->
+  </object-type>
+
+  <object-type name="QInputDialog">
+    <modify-function signature="open(QObject *, const char *)" remove="all"/> <!-- # TODO -->
+
+    <modify-function signature="getDouble(QWidget *, const QString &amp;, const QString &amp;, double, double, double, int, bool *, QFlags&lt;Qt::WindowType&gt;)">
+        <rename to="getDouble_private"/>
+        <access modifier="private"/>
+    </modify-function>
+
+    <modify-function signature="getInteger(QWidget *, const QString &amp;, const QString &amp;, int, int, int, int, bool *, QFlags&lt;Qt::WindowType&gt;)">
+        <remove/>
+    </modify-function>
+
+    <modify-function signature="getInt(QWidget*,QString,QString,int,int,int,int,bool*,QFlags&lt;Qt::WindowType&gt;)">
+        <rename to="getInt_private" />
+        <access modifier="private" />
+    </modify-function>
+
+    <modify-function signature="getItem(QWidget *, const QString &amp;, const QString &amp;, const QStringList&lt;QString&gt; &amp;, int, bool, bool *, QFlags&lt;Qt::WindowType&gt;)">
+        <rename to="getItem_private"/>
+        <access modifier="private"/>
+    </modify-function>
+
+    <modify-function signature="getText(QWidget *, const QString &amp;, const QString &amp;, QLineEdit::EchoMode, const QString &amp;, bool *, QFlags&lt;Qt::WindowType&gt;)">
+        <rename to="getText_private"/>
+        <access modifier="private"/>
+    </modify-function>
+    <inject-code>
+        <import-file name="typesystem_gui-java.java" quote-after-line="class QInputDialog___" quote-before-line="}// class"/>
+    </inject-code>
+
+    </object-type>
+
+
+  <object-type name="QGraphicsScene">
+    <extra-includes>
+        <include file-name="QVarLengthArray" location="global"/>
+    </extra-includes>
+    <modify-function signature="drawItems(QPainter*,int,QGraphicsItem**,const QStyleOptionGraphicsItem*,QWidget*)" remove="all"/> <!-- TODO: What is '_ConcreteWrapper'? -->
+    <!--
+    <modify-function signature="contextMenuEvent(QGraphicsSceneContextMenuEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="dragEnterEvent(QGraphicsSceneDragDropEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="dragLeaveEvent(QGraphicsSceneDragDropEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="dragMoveEvent(QGraphicsSceneDragDropEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="drawBackground(QPainter*,QRectF)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="drawForeground(QPainter*,QRectF)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="drawItems(QPainter*,int,QGraphicsItem**,const QStyleOptionGraphicsItem*,QWidget*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="dropEvent(QGraphicsSceneDragDropEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="focusInEvent(QFocusEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="focusOutEvent(QFocusEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="helpEvent(QGraphicsSceneHelpEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="inputMethodEvent(QInputMethodEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="keyPressEvent(QKeyEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="keyReleaseEvent(QKeyEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="mouseDoubleClickEvent(QGraphicsSceneMouseEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="mouseMoveEvent(QGraphicsSceneMouseEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="mousePressEvent(QGraphicsSceneMouseEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="mouseReleaseEvent(QGraphicsSceneMouseEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="wheelEvent(QGraphicsSceneWheelEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+
+    <modify-function signature="setActiveWindow(QGraphicsWidget*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setStyle(QStyle*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="addItem(QGraphicsItem *)">
+      <modify-argument index="1">
+        <define-ownership class="java" owner="c++"/>
+      </modify-argument>
+    </modify-function>
+    <modify-function signature="addEllipse(const QRectF &amp;, const QPen &amp;, const QBrush &amp;)">
+      <modify-argument index="return">
+        <define-ownership class="java" owner="c++"/>
+      </modify-argument>
+    </modify-function>
+    <modify-function signature="addLine(const QLineF &amp;, const QPen &amp;)">
+      <modify-argument index="return">
+        <define-ownership class="java" owner="c++"/>
+      </modify-argument>
+    </modify-function>
+    <modify-function signature="addPath(const QPainterPath &amp;, const QPen &amp;, const QBrush &amp;)">
+      <modify-argument index="return">
+        <define-ownership class="java" owner="c++"/>
+      </modify-argument>
+    </modify-function>
+    <modify-function signature="addPixmap(const QPixmap &amp;)">
+        <modify-argument index="return">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="addPolygon(const QPolygonF &amp;, const QPen &amp;, const QBrush &amp;)">
+        <modify-argument index="return">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="addRect(const QRectF &amp;, const QPen &amp;, const QBrush &amp;)">
+        <modify-argument index="return">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="addText(const QString &amp;, const QFont &amp;)">
+        <modify-argument index="return">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="addWidget(QWidget*,QFlags&lt;Qt::WindowType&gt;)">
+        <modify-argument index="return">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="removeItem(QGraphicsItem*)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="default"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setFocusItem(QGraphicsItem*,Qt::FocusReason)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcFocusItem"/>
+        </modify-argument>
+    </modify-function>
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QGraphicsScene___" quote-before-line="}// class"/>
+        </inject-code>
+
+        <modify-function signature="addEllipse(const QRectF &amp;, const QPen &amp;, const QBrush &amp;)" remove="all"/>
+        <modify-function signature="addEllipse(double, double, double, double, const QPen &amp;, const QBrush &amp;)" remove="all"/>
+        <modify-function signature="addLine(const QLineF &amp;, const QPen &amp;)" remove="all"/>
+        <modify-function signature="addLine(double, double, double, double, const QPen &amp;)" remove="all"/>
+        <modify-function signature="addPath(const QPainterPath &amp;, const QPen &amp;, const QBrush &amp;)" remove="all"/>
+        <modify-function signature="addPixmap(const QPixmap &amp;)" remove="all"/>
+        <modify-function signature="addPolygon(const QPolygonF &amp;, const QPen &amp;, const QBrush &amp;)" remove="all"/>
+        <modify-function signature="addRect(const QRectF &amp;, const QPen &amp;, const QBrush &amp;)" remove="all"/>
+        <modify-function signature="addRect(double, double, double, double, const QPen &amp;, const QBrush &amp;)" remove="all"/>
+        <modify-function signature="addSimpleText(const QString &amp;, const QFont &amp;)" remove="all"/>
+        <modify-function signature="addText(const QString &amp;, const QFont &amp;)" remove="all"/>
+
+        <modify-function signature="drawItems(QPainter*,int,QGraphicsItem**,const QStyleOptionGraphicsItem*,QWidget*)">
+            <modify-argument index="2">
+                <remove-argument/>
+                <conversion-rule class="shell">
+                    // nothing
+                </conversion-rule>
+                <conversion-rule class="native">
+                    <insert-template name="core.get_array_length">
+                        <replace from="%ARRAY" to="%3"/>
+                    </insert-template>
+                    int __length = %out;
+                </conversion-rule>
+
+            </modify-argument>
+
+            <modify-argument index="3">
+                <replace-type modified-type="qt.gui.QGraphicsItemInterface[]"/>
+                <conversion-rule class="shell">
+                    <insert-template name="gui.convert_graphicsitem_array_to_java">
+                        <replace from="%LENGTH" to="%2"/>
+                    </insert-template>
+                    jobjectArray graphicsItemArrayHolder = %out;
+                </conversion-rule>
+                <conversion-rule class="native">
+                    <insert-template name="gui.convert_graphicsitem_array_from_java"/>
+                </conversion-rule>
+            </modify-argument>
+
+            <modify-argument index="return">
+                <conversion-rule class="shell">
+                    qtjambi_invalidate_array(__jni_env, styleOptionArrayHolder);
+                    qtjambi_invalidate_array(__jni_env, graphicsItemArrayHolder);
+                </conversion-rule>
+            </modify-argument>
+
+            <modify-argument index="4">
+                <replace-type modified-type="qt.gui.QStyleOptionGraphicsItem[]"/>
+                <conversion-rule class="shell">
+                    <insert-template name="gui.convert_styleoptiongraphicsitem_array_to_java">
+                        <replace from="%LENGTH" to="%2"/>
+                    </insert-template>
+                    jobjectArray styleOptionArrayHolder = %out;
+                </conversion-rule>
+                <conversion-rule class="native">
+                    <insert-template name="gui.convert_styleoptiongraphicsitem_array_from_java"/>
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>
+	-->
+    </object-type>
+
+
+  <object-type name="QCalendarWidget">
+    <extra-includes>
+      <include file-name="QTextCharFormat" location="global"/>
+    </extra-includes>
+
+      <modify-function signature="isHeaderVisible()const" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="setHeaderVisible(bool)" remove="all"/> <!--### Obsolete in 4.3-->
+
+      <modify-function signature="paintCell(QPainter*,QRect,QDate)const">
+        <modify-argument invalidate-after-use="yes" index="1"/>
+      </modify-function>
+  </object-type>
+
+  <object-type name="QTreeWidget">
+    <modify-function signature="mimeData(const QList&lt;QTreeWidgetItem*&gt;)const">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="dropMimeData(QTreeWidgetItem*,int,const QMimeData*,Qt::DropAction)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="isSortingEnabled()const" remove="all"/>
+    <modify-function signature="setSortingEnabled(bool)" remove="all"/>
+    <modify-function signature="indexOfTopLevelItem(QTreeWidgetItem *)">
+        <remove/>
+    </modify-function>
+    <modify-function signature="addTopLevelItem(QTreeWidgetItem *)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="takeTopLevelItem(int)">
+        <modify-argument index="return">
+            <define-ownership class="java" owner="default"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="addTopLevelItems(const QList&lt;QTreeWidgetItem*&gt; &amp;)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertTopLevelItem(int, QTreeWidgetItem *)">
+        <modify-argument index="2">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertTopLevelItems(int, const QList&lt;QTreeWidgetItem*&gt; &amp;)">
+        <modify-argument index="2">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setHeaderItem(QTreeWidgetItem *)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="takeTopLevelItem(int)">
+        <modify-argument index="return">
+            <define-ownership class="java" owner="default"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="removeItemWidget(QTreeWidgetItem*,int)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="default"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setCurrentItem(QTreeWidgetItem*,int,QFlags&lt;QItemSelectionModel::SelectionFlag&gt;)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setFirstItemColumnSpanned(const QTreeWidgetItem*,bool)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setCurrentItem(QTreeWidgetItem*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setCurrentItem(QTreeWidgetItem*,int)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setItemExpanded(const QTreeWidgetItem*,bool)">
+        <remove/>
+    </modify-function>
+    <modify-function signature="isItemExpanded(const QTreeWidgetItem*)const">
+        <remove/>
+    </modify-function>
+    <modify-function signature="setItemHidden(const QTreeWidgetItem*,bool)">
+        <remove/>
+    </modify-function>
+    <modify-function signature="isItemHidden(const QTreeWidgetItem*)const">
+        <remove/>
+    </modify-function>
+    <modify-function signature="isItemSelected(const QTreeWidgetItem*)const">
+        <remove/>
+    </modify-function>
+    <modify-function signature="setItemSelected(const QTreeWidgetItem*,bool)">
+        <remove/>
+    </modify-function>
+    <modify-function signature="setItemWidget(QTreeWidgetItem*,int,QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+        <modify-argument index="3">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setModel(QAbstractItemModel*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+
+      <modify-function signature="items(const QMimeData*)const" remove="all"/> <!--### Obsolete in 4.3-->
+  </object-type>
+
+  <object-type name="QAbstractItemDelegate">
+    <modify-function signature="setEditorData(QWidget*,QModelIndex)const">
+        <modify-argument index="1">
+            <!-- Safe to ignore because this implementation is documented to do nothing -->
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setModelData(QWidget*,QAbstractItemModel*,QModelIndex)const">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+        <modify-argument index="2">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="paint(QPainter*,QStyleOptionViewItem,QModelIndex)const">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="editorEvent(QEvent*,QAbstractItemModel*,QStyleOptionViewItem,QModelIndex)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+
+      <modify-function signature="elidedText(QFontMetrics, int, Qt::TextElideMode, QString)" remove="all"/> <!--### Obsolete in 4.3-->
+  </object-type>
+
+  <object-type name="QTableWidgetItem" delete-in-main-thread="yes">
+    <modify-function signature="operator=(const QTableWidgetItem&amp;)" remove="all"/>
+    <modify-function signature="clone() const">
+        <modify-argument index="return">
+            <define-ownership class="shell" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+
+      <modify-function signature="backgroundColor()const" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="setBackgroundColor(QColor)" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="setTextColor(QColor)" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="textColor()const" remove="all"/> <!--### Obsolete in 4.3-->
+
+    <modify-function signature="operator&lt;(QTableWidgetItem)const">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="read(QDataStream&amp;)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="write(QDataStream&amp;)const">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+
+  </object-type>
+
+  <object-type name="QListWidgetItem" delete-in-main-thread="yes">
+
+    <modify-function signature="operator&lt;(QListWidgetItem)const">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="read(QDataStream&amp;)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="write(QDataStream&amp;)const">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+
+
+    <modify-function signature="operator=(const QListWidgetItem&amp;)" remove="all"/>
+<!--    <modify-function signature="QListWidgetItem(QListWidget *, int)">
+        <modify-argument index="this">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="QListWidgetItem(const QString &amp;, QListWidget *, int)">
+        <modify-argument index="this">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="QListWidgetItem(const QIcon &amp;, const QString &amp;, QListWidget *, int)">
+        <modify-argument index="this">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="clone() const">
+        <modify-argument index="return">
+            <define-ownership class="shell" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+-->
+      <modify-function signature="backgroundColor()const" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="setBackgroundColor(QColor)" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="setTextColor(QColor)" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="textColor()const" remove="all"/> <!--### Obsolete in 4.3-->
+  </object-type>
+
+  <object-type name="QGraphicsTextItem"> <!-- a QObject so main-thread delete redundant -->
+    <extra-includes>
+      <include file-name="QTextCursor" location="global"/>
+    </extra-includes>
+    	<modify-function signature="setExtension(QGraphicsItem::Extension,QVariant)" remove="all"/>
+	<modify-function signature="supportsExtension(QGraphicsItem::Extension)const" remove="all"/>
+    <!--
+    <modify-function signature="QGraphicsTextItem(QGraphicsItem*,QGraphicsScene*)">
+        <inject-code position="end">
+            <argument-map index="1" meta-name="%1"/>
+            if (%1 != null) disableGarbageCollection();
+        </inject-code>
+    </modify-function>
+    <modify-function signature="QGraphicsTextItem(const QString &amp;,QGraphicsItem*,QGraphicsScene*)">
+        <inject-code position="end">
+            <argument-map index="2" meta-name="%2"/>
+            if (%2 != null) disableGarbageCollection();
+        </inject-code>
+    </modify-function>
+    <modify-function signature="setDocument(QTextDocument*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcDocument"/>
+        </modify-argument>
+    </modify-function>
+    -->
+      <modify-function signature="matrix()const" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="resetMatrix()" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="sceneMatrix()const" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="setMatrix(QMatrix, bool)" remove="all"/> <!--### Obsolete in 4.3-->
+  </object-type>
+
+  <object-type name="QCompleter">
+    <modify-function signature="activated(const QModelIndex &amp;)">
+        <rename to="activatedIndex"/>
+    </modify-function>
+    <modify-function signature="highlighted(const QModelIndex &amp;)">
+        <rename to="highlightedIndex"/>
+    </modify-function>
+    <modify-function signature="setModel(QAbstractItemModel *)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcModel"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setPopup(QAbstractItemView *)">
+        <modify-argument index="1">
+            <no-null-pointer/>
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setWidget(QWidget *)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcWidget"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+
+
+  <object-type name="QTreeWidgetItem" delete-in-main-thread="yes">
+
+    <modify-function signature="operator&lt;(QTreeWidgetItem)const">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="read(QDataStream&amp;)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="write(QDataStream&amp;)const">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+
+    <modify-function signature="QTreeWidgetItem(const QTreeWidgetItem &amp;)" remove="all"/>
+    <modify-function signature="operator=(const QTreeWidgetItem&amp;)" remove="all"/>
+
+    <modify-function signature="QTreeWidgetItem(QTreeWidget *,int)">
+        <modify-argument index="this">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="QTreeWidgetItem(QTreeWidget *,const QStringList&lt;QString&gt; &amp;,int)">
+        <modify-argument index="this">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="QTreeWidgetItem(QTreeWidget *,QTreeWidgetItem *,int)">
+        <modify-argument index="this">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="QTreeWidgetItem(QTreeWidgetItem *,int)">
+        <modify-argument index="this">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="QTreeWidgetItem(QTreeWidgetItem *,const QStringList&lt;QString&gt; &amp;,int)">
+        <modify-argument index="this">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="QTreeWidgetItem(QTreeWidgetItem *,QTreeWidgetItem *,int)">
+        <modify-argument index="this">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="clone() const">
+        <modify-argument index="return">
+            <define-ownership class="shell" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="addChild(QTreeWidgetItem *)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="addChildren(const QList&lt;QTreeWidgetItem*&gt; &amp;)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertChild(int, QTreeWidgetItem *)">
+        <modify-argument index="2">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertChildren(int, const QList&lt;QTreeWidgetItem*&gt; &amp;)">
+        <modify-argument index="2">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="removeChild(QTreeWidgetItem*)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="default"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="takeChild(int)">
+        <modify-argument index="return">
+            <define-ownership class="java" owner="default"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="takeChildren()">
+        <modify-argument index="return">
+            <define-ownership class="java" owner="default"/>
+        </modify-argument>
+    </modify-function>
+
+      <modify-function signature="backgroundColor(int)const" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="setBackgroundColor(int, QColor)" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="setTextColor(int, QColor)" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="textColor(int)const" remove="all"/> <!--### Obsolete in 4.3-->
+  </object-type>
+
+  <object-type name="QListWidget">
+    <modify-function signature="mimeData(const QList&lt;QListWidgetItem *&gt;)const">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="addItem(QListWidgetItem *)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertItem(int, QListWidgetItem *)">
+        <modify-argument index="2">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="removeItemWidget(QListWidgetItem*)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="default"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setCurrentItem(QListWidgetItem*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setCurrentItem(QListWidgetItem*,QFlags&lt;QItemSelectionModel::SelectionFlag&gt;)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setItemHidden(const QListWidgetItem*,bool)">
+        <remove/>
+    </modify-function>
+    <modify-function signature="isItemHidden(const QListWidgetItem*)const">
+        <remove/>
+    </modify-function>
+    <modify-function signature="setItemSelected(const QListWidgetItem*,bool)">
+        <remove/>
+    </modify-function>
+    <modify-function signature="isItemSelected(const QListWidgetItem*)const">
+        <remove/>
+    </modify-function>
+    <modify-function signature="takeItem(int)">
+        <modify-argument index="return">
+            <define-ownership class="java" owner="default"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setItemWidget(QListWidgetItem*,QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+        <modify-argument index="2">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setModel(QAbstractItemModel*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+
+  
+<!--        <modify-function signature="addItem(const QString &amp;)" remove="all"/>-->
+        <modify-function signature="addItems(const QStringList&lt;QString&gt; &amp;)" remove="all"/>
+        <modify-function signature="insertItem(int, const QString &amp;)" remove="all"/>
+        <modify-function signature="insertItems(int, const QStringList&lt;QString&gt; &amp;)" remove="all"/>
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QListWidget___" quote-before-line="}// class"/>
+        </inject-code>
+    </object-type>
+
+  <object-type name="QWidget">
+    <extra-includes>
+        <include file-name="QIcon" location="global"/>
+        <include file-name="QMessageBox" location="global"/>
+    </extra-includes>
+
+<!-- These should be restored later after fixing abstract classes issue -->
+<!--<modify-function signature="inputContext()" remove="all"/>
+<modify-function signature="layout() const" remove="all"/>
+<modify-function signature="setLayout(QLayout*)" remove="all"/>-->
+<modify-function signature="style () const" remove="all"/>
+<!--                                                                    -->
+
+    <modify-function signature="actionEvent(QActionEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="changeEvent(QEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="closeEvent(QCloseEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="contextMenuEvent(QContextMenuEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="dragEnterEvent(QDragEnterEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="dragLeaveEvent(QDragLeaveEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="dragMoveEvent(QDragMoveEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="dropEvent(QDropEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="enterEvent(QEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="focusInEvent(QFocusEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="focusOutEvent(QFocusEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="hideEvent(QHideEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="inputMethodEvent(QInputMethodEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="keyPressEvent(QKeyEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="keyReleaseEvent(QKeyEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="leaveEvent(QEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="mouseDoubleClickEvent(QMouseEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="mouseMoveEvent(QMouseEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="mousePressEvent(QMouseEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="mouseReleaseEvent(QMouseEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="moveEvent(QMoveEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="paintEvent(QPaintEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="resizeEvent(QResizeEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="showEvent(QShowEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="tabletEvent(QTabletEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="wheelEvent(QWheelEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+<!-- qtd
+    <modify-function signature="render(QPainter*,QPoint,QRegion,QFlags&lt;QWidget::RenderFlag&gt;)">
+        <modify-argument index="2">
+            <remove-default-expression/>
+        </modify-argument>
+    </modify-function>
+
+    <inject-code class="native">
+        extern "C" JNIEXPORT void JNICALL QTJAMBI_FUNCTION_PREFIX(Java_com_trolltech_qt_gui_QWidget__1_1qt_1QMessageBox_1setWindowTitle)
+        (JNIEnv *__jni_env,
+            jclass,
+            jlong __this_nativeId,
+            jobject title0)
+        {
+            QTJAMBI_DEBUG_TRACE("(native) entering: QMessageBox::setWindowTitle(const QString &amp; title)");
+            QString __qt_title0 =  qtjambi_to_qstring(__jni_env, (jstring) title0);
+            QTJAMBI_EXCEPTION_CHECK(__jni_env);
+            QMessageBox *__qt_this = (QMessageBox *) qtjambi_from_jlong(__this_nativeId);
+            QTJAMBI_EXCEPTION_CHECK(__jni_env);
+            Q_ASSERT(__qt_this);
+            __qt_this-&gt;setWindowTitle((const QString&amp; )__qt_title0);
+            QTJAMBI_DEBUG_TRACE("(native) -&gt; leaving: QMessageBox::setWindowTitle(const QString &amp; title)");
+        }
+    </inject-code>
+
+    <inject-code class="native">
+        extern "C" JNIEXPORT void JNICALL QTJAMBI_FUNCTION_PREFIX(Java_com_trolltech_qt_gui_QWidget__1_1qt_1QMessageBox_1setWindowModality)
+        (JNIEnv *__jni_env,
+            jclass,
+            jlong __this_nativeId,
+            jint windowModality0)
+        {
+            Q_UNUSED(__jni_env);
+            QTJAMBI_DEBUG_TRACE("(native) entering: QMessageBox::setWindowModality(Qt::WindowModality modality)");
+            Qt::WindowModality __qt_windowModality0 = (Qt::WindowModality) windowModality0;
+            QTJAMBI_EXCEPTION_CHECK(__jni_env);
+            QMessageBox *__qt_this = (QMessageBox *) qtjambi_from_jlong(__this_nativeId);
+            QTJAMBI_EXCEPTION_CHECK(__jni_env);
+            Q_ASSERT(__qt_this);
+            __qt_this-&gt;setWindowModality((Qt::WindowModality )__qt_windowModality0);
+            QTJAMBI_DEBUG_TRACE("(native) -&gt; leaving: QMessageBox::setWindowModality(Qt::WindowModality modality)");
+        }
+    </inject-code>
+
+    <modify-function signature="render(QPaintDevice *, const QPoint &amp;, const QRegion &amp;, QFlags&lt;QWidget::RenderFlag&gt;)">
+        <modify-argument index="4">
+            <replace-default-expression with="RenderFlag.DrawWindowBackground, RenderFlag.DrawChildren"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="render(QPainter *, const QPoint &amp;, const QRegion &amp;, QFlags&lt;QWidget::RenderFlag&gt;)">
+        <modify-argument index="4">
+            <replace-default-expression with="RenderFlag.DrawWindowBackground, RenderFlag.DrawChildren"/>
+        </modify-argument>
+    </modify-function>
+-->	
+<!--    <modify-function signature="setFocusProxy(QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcFocusProxy"/>
+        </modify-argument>
+    </modify-function> -->
+    <modify-function signature="setInputContext(QInputContext*)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+	<!--
+    <modify-function signature="setLayout(QLayout*)">
+        <modify-argument index="1">
+            <no-null-pointer/>
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+	-->
+    <modify-function signature="setParent(QWidget*,QFlags&lt;Qt::WindowType&gt;)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setParent(QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+	<!--
+    <modify-function signature="setStyle(QStyle*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcStyle"/>
+        </modify-argument>
+    </modify-function>
+	-->
+    <modify-function signature="setTabOrder(QWidget*,QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+        <modify-argument index="2">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="getContentsMargins(int*,int*,int*,int*)const">
+        <access modifier="private"/>
+    </modify-function>
+
+    <modify-function signature="addAction(QAction *)">
+        <modify-argument index="1">
+            <reference-count action="add" variable-name="__rcActions"/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="insertAction(QAction *, QAction *)">
+        <modify-argument index="2">
+            <reference-count action="add" variable-name="__rcActions"/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="addActions(const QList&lt;QAction *&gt; &amp;)">
+        <modify-argument index="1">
+            <reference-count action="add-all" variable-name="__rcActions"/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="insertActions(QAction *, const QList&lt;QAction *&gt; &amp;)">
+        <modify-argument index="2">
+            <reference-count action="add-all" variable-name="__rcActions"/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="removeAction(QAction *)">
+        <modify-argument index="1">
+            <reference-count action="remove" variable-name="__rcActions"/>
+        </modify-argument>
+    </modify-function>
+      <modify-function signature="enabledChange(bool)" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="fontChange(QFont)" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="isEnabledToTLW()const" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="isTopLevel()const" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="paletteChange(QPalette)" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="setShown(bool)" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="topLevelWidget()const" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="windowActivationChange(bool)" remove="all"/> <!--### Obsolete in 4.3-->
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QWidget___" quote-before-line="}// class"/>
+        </inject-code>
+<!--
+        <modify-function signature="setWindowTitle(const QString &amp;)">
+            <inject-code class="java">
+                <argument-map index="1" meta-name="%1"/>
+            if (this instanceof QMessageBox) {
+                qt.GeneratorUtilities.threadCheck(this);
+                if (nativeId() == 0)
+                    throw new QNoNativeResourcesException("Function call on incomplete object of type: " +getClass().getName());
+                __qt_QMessageBox_setWindowTitle(nativeId(), %1);
+                return ;
+            }
+            </inject-code>
+        </modify-function>
+
+
+        <modify-function signature="setWindowModality(Qt::WindowModality)">
+            <inject-code class="java">
+                <argument-map index="1" meta-name="%1"/>
+            if (this instanceof QMessageBox) {
+                qt.GeneratorUtilities.threadCheck(this);
+                if (nativeId() == 0)
+                    throw new QNoNativeResourcesException("Function call on incomplete object of type: " +getClass().getName());
+                __qt_QMessageBox_setWindowModality(nativeId(), %1.value());
+                return ;
+            }
+            </inject-code>
+        </modify-function>
+-->
+
+
+
+    </object-type>
+
+  <object-type name="QMessageBox">
+    <modify-function signature="open()" remove="all"/>
+    <modify-function signature="setWindowTitle(const QString &amp;)" remove="all"/>
+    <modify-function signature="setWindowModality(Qt::WindowModality)" remove="all"/>
+    <extra-includes>
+        <include file-name="QPixmap" location="global"/>
+    </extra-includes>
+    <modify-function signature="addButton(QAbstractButton*,QMessageBox::ButtonRole)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="removeButton(QAbstractButton*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setDefaultButton(QPushButton*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setEscapeButton(QAbstractButton*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+
+      <modify-function signature="QMessageBox(QString,QString,QMessageBox::Icon,int,int,int,QWidget*,QFlags&lt;Qt::WindowType&gt;)" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="buttonText(int)const" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="setButtonText(int, QString)" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="standardIcon(QMessageBox::Icon)" remove="all"/> <!--### Obsolete in 4.3-->
+
+      <modify-function signature="critical(QWidget*,QString,QString,int,int,int)" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="critical(QWidget*,QString,QString,QString,QString,QString,int,int)" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="information(QWidget*,QString,QString,int,int,int)" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="information(QWidget*,QString,QString,QString,QString,QString,int,int)" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="question(QWidget*, QString, QString, int, int, int)" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="question(QWidget*, QString, QString, QString, QString, QString, int, int)" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="warning(QWidget*, QString, QString, int, int, int)" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="warning(QWidget*, QString, QString, QString, QString, QString, int, int)" remove="all"/> <!--### Obsolete in 4.3-->
+  </object-type>
+
+  <object-type name="QAbstractSpinBox">
+    <modify-function signature="initStyleOption(QStyleOptionSpinBox*)const">
+        <access modifier="private"/>
+    </modify-function>
+    <modify-function signature="setLineEdit(QLineEdit*)">
+        <modify-argument index="1">
+            <!-- Safe to ignore because the spinbox reparents the line edit -->
+            <reference-count action="ignore"/>
+            <no-null-pointer/>
+        </modify-argument>
+    </modify-function>
+<!--  
+        <inject-code>
+            <insert-template name="gui.init_style_option">
+                <replace from="%TYPE" to="QStyleOptionSpinBox"/>
+                <replace from="final" to=""/>
+            </insert-template>
+        </inject-code>
+
+        <modify-function signature="fixup(QString&amp;)const">
+            <modify-argument index="1">
+                <replace-type modified-type="java.lang.String"/>
+                <conversion-rule class="shell">
+                    jobject %out = (jobject) qtjambi_from_qstring(__jni_env, %in);
+                </conversion-rule>
+                <conversion-rule class="native">
+                    QString %out = qtjambi_to_qstring(__jni_env, (jstring) %in);
+                    QString *__qt_converted = &amp;%out;
+                </conversion-rule>
+            </modify-argument>
+
+            <modify-argument index="0">
+                <replace-type modified-type="java.lang.String"/>
+                <conversion-rule class="native">
+                    jobject %out = (jobject) qtjambi_from_qstring(__jni_env, *__qt_converted);
+                </conversion-rule>
+                <conversion-rule class="shell">
+                    %1 = qtjambi_to_qstring(__jni_env, (jstring) %in);
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>
+
+        <modify-function signature="validate(QString&amp;,int&amp;)const">
+            <modify-argument index="1">
+                <replace-type modified-type="qt.gui.QValidator$QValidationData"/>
+                <conversion-rule class="shell">
+                    <insert-template name="gui.convert_validationdata_to_java">
+                        <replace from="%STRING" to="%1"/>
+                        <replace from="%POS" to="%2"/>
+                    </insert-template>
+                </conversion-rule>
+                <conversion-rule class="native">
+                    <insert-template name="gui.convert_validationdata_to_string"/>
+                </conversion-rule>
+            </modify-argument>
+
+            <modify-argument index="2">
+                <remove-argument/>
+                <conversion-rule class="shell">
+                    // nothing needed
+                </conversion-rule>
+                <conversion-rule class="native">
+                    <insert-template name="gui.convert_validationdata_to_pos">
+                        <replace from="%VALIDATIONDATA" to="%1"/>
+                    </insert-template>
+                </conversion-rule>
+            </modify-argument>
+
+            <modify-argument index="0">
+                <conversion-rule class="native">
+                    <insert-template name="gui.cleanup_validationdata_from_java"/>
+                    jint %out = %in;
+                </conversion-rule>
+                <conversion-rule class="shell">
+                    <insert-template name="gui.cleanup_validationdata_to_java">
+                        <replace from="%STRING" to="%1"/>
+                        <replace from="%POS" to="%2"/>
+                    </insert-template>
+                    QValidator::State %out = (QValidator::State) qtjambi_to_enumerator(__jni_env, %in);
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>-->
+    </object-type>
+
+  <object-type name="QTextFrame" delete-in-main-thread="yes">
+    <extra-includes>
+        <include file-name="QTextCursor" location="global"/>
+    </extra-includes>
+  </object-type>
+
+  <object-type name="QImageIOHandler">
+    <extra-includes>
+        <include file-name="QRect" location="global"/>
+    </extra-includes>
+    <modify-function signature="setFormat(const QByteArray &amp;)const">
+        <remove/>
+    </modify-function>
+    <modify-function signature="setDevice(QIODevice*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcDevice"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="read(QImage*)">
+        <modify-argument index="1">
+            <replace-type modified-type="QImage"/>
+<!--            <conversion-rule class="shell">
+                jobject %out = qtjambi_from_object(__jni_env, %in, "QImage", "com/trolltech/qt/gui/", false);
+
+                QtJambiLink *__link = %out != 0 ? QtJambiLink::findLink(__jni_env, %out) : 0;
+            </conversion-rule>
+            <conversion-rule class="native">
+                QImage *%out = (QImage *) qtjambi_to_object(__jni_env, %in);
+            </conversion-rule> -->
+        </modify-argument>
+<!--        <modify-argument index="0">
+            <conversion-rule class="shell">
+                // Invalidate object
+                if (__link != 0) __link-&gt;resetObject(__jni_env);
+                bool %out = (bool) %in;
+            </conversion-rule>
+        </modify-argument>-->
+    </modify-function>
+
+      <modify-function signature="name()const" remove="all"/> <!--### Obsolete in 4.3-->
+  </object-type>
+
+  <object-type name="QProxyModel">
+    <modify-function signature="parent()const" remove="all"/>
+    <extra-includes>
+        <include file-name="QPixmap" location="global"/>
+        <include file-name="QStringList" location="global"/>
+        <include file-name="QSize" location="global"/>
+    </extra-includes>
+    <modify-function signature="setModel(QAbstractItemModel*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcModel"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+
+  <object-type name="QImageReader">
+    <extra-includes>
+        <include file-name="QColor" location="global"/>
+        <include file-name="QRect" location="global"/>
+        <include file-name="QSize" location="global"/>
+        <include file-name="QStringList" location="global"/>
+        <include file-name="QImage" location="global"/>
+    </extra-includes>
+    <modify-function signature="read(QImage*) ">
+        <remove/>
+    </modify-function>
+    <modify-function signature="setDevice(QIODevice*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcDevice"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+
+  <object-type name="QMovie">
+    <extra-includes>
+        <include file-name="QColor" location="global"/>
+        <include file-name="QImage" location="global"/>
+        <include file-name="QPixmap" location="global"/>
+        <include file-name="QRect" location="global"/>
+        <include file-name="QSize" location="global"/>
+    </extra-includes>
+    <modify-function signature="cacheMode()">
+        <remove/>
+    </modify-function>
+    <modify-function signature="setDevice(QIODevice*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcDevice"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+
+  <object-type name="QPageSetupDialog">
+      <modify-function signature="open(QObject *, const char *)" remove="all"/> <!-- # TODO -->
+
+  </object-type>
+
+  <object-type name="QTabWidget">
+<!--    <modify-function signature="initStyleOption(QStyleOptionTabWidgetFrame*)const">
+        <access modifier="private"/>
+    </modify-function>
+    <inject-code>
+        <insert-template name="gui.init_style_option">
+            <replace from="%TYPE" to="QStyleOptionTabWidgetFrame"/>
+        </insert-template>
+    </inject-code>-->
+    <modify-function signature="addTab(QWidget*,QIcon,QString)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="addTab(QWidget*,QString)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertTab(int,QWidget*,QString)">
+        <modify-argument index="2">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertTab(int,QWidget*,QIcon,QString)">
+        <modify-argument index="2">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setCornerWidget(QWidget*,Qt::Corner)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setCurrentWidget(QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setTabBar(QTabBar*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+  <object-type name="QDrag">
+    <extra-includes>
+        <include file-name="QPoint" location="global"/>
+        <include file-name="QPixmap" location="global"/>
+    </extra-includes>
+    <modify-function signature="setMimeData(QMimeData*)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="start(QFlags&lt;Qt::DropAction&gt;)" remove="all"/> <!--### Obsolete in 4.3-->
+  </object-type>
+
+  <object-type name="QDateTimeEdit">
+    <modify-function signature="setCalendarWidget(QCalendarWidget*)">
+        <modify-argument index="1">
+            <!-- Safe to ignore because widget is reparented -->
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    </object-type>
+
+  <object-type name="QSortFilterProxyModel">
+     <modify-function signature="parent()const" remove="all"/>
+    <extra-includes>
+        <include file-name="QItemSelection" location="global"/>
+        <include file-name="QStringList" location="global"/>
+        <include file-name="QSize" location="global"/>
+    </extra-includes>
+
+    <modify-function signature="setSourceModel(QAbstractItemModel *)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcSourceModel"/>
+        </modify-argument>
+    </modify-function>
+
+      <modify-function signature="clear()" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="filterChanged()" remove="all"/> <!--### Obsolete in 4.3-->
+  
+        <modify-function signature="match(QModelIndex, int, QVariant, int, QFlags&lt;Qt::MatchFlag&gt;) const">
+            <modify-argument index="5">
+                <replace-default-expression with="Qt.MatchFlag.MatchStartsWith | Qt.MatchFlag.MatchWrap"/>
+            </modify-argument>
+        </modify-function>
+    </object-type>
+
+  <object-type name="QSlider">
+<!--    <modify-function signature="initStyleOption(QStyleOptionSlider*)const">
+        <access modifier="private"/>
+    </modify-function>
+  
+        <inject-code>
+            <insert-template name="gui.init_style_option">
+                <replace from="%TYPE" to="QStyleOptionSlider"/>
+            </insert-template>
+        </inject-code>-->
+    </object-type>
+
+  <object-type name="QInputContext">
+    <extra-includes>
+        <include file-name="QTextFormat" location="global"/>
+    </extra-includes>
+    <modify-function signature="setFocusWidget(QWidget*)">
+        <remove/>
+    </modify-function>
+    <modify-function signature="filterEvent(const QEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="mouseHandler(int,QMouseEvent*)">
+        <modify-argument index="2" invalidate-after-use="yes"/>
+    </modify-function>
+
+  </object-type>
+
+  <object-type name="QProgressDialog">
+        <modify-function signature="open(QObject *, const char *)" remove="all"/> <!-- # TODO -->
+
+    <modify-function signature="setBar(QProgressBar*)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setCancelButton(QPushButton*)">
+        <modify-argument index="1">
+            <!-- Safe to ignore because button is reparented -->
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setLabel(QLabel*)">
+        <modify-argument index="1">
+            <!-- Safe to ignore because label is reparented -->
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+
+  </object-type>
+
+  <object-type name="QLabel">
+<!--    <modify-function signature="picture()const">
+        <access modifier="private"/>
+        <rename to="picture_private"/>
+    </modify-function>
+-->
+    <modify-function signature="setBuddy(QWidget *)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcBuddy"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setMovie(QMovie *)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcMovie"/>
+        </modify-argument>
+    </modify-function>
+<!--    <modify-function signature="pixmap()const">
+        <access modifier="private"/>
+        <rename to="pixmap_private"/>
+    </modify-function>
+
+        <inject-code>
+            <insert-template name="gui.getter_returning_nativepointer">
+                <replace from="%RETURN_TYPE" to="QPicture"/>
+                <replace from="%FUNCTION_NAME" to="picture"/>
+            </insert-template>
+        </inject-code>
+        <inject-code>
+            <insert-template name="gui.getter_returning_nativepointer">
+                <replace from="%RETURN_TYPE" to="QPixmap"/>
+                <replace from="%FUNCTION_NAME" to="pixmap"/>
+            </insert-template>
+        </inject-code> -->
+    </object-type>
+
+  <object-type name="QFileDialog">
+    <extra-includes>
+        <include file-name="QUrl" location="global"/>
+    </extra-includes>
+    <modify-function signature="open()" remove="all"/>
+<!--     <modify-function signature="setVisible(bool)" remove="all"/> // properties_d -->
+    <modify-function signature="getOpenFileName(QWidget*,QString,QString,QString,QString*,QFlags&lt;QFileDialog::Option&gt;)">
+        <modify-argument index="1">
+            <remove-default-expression/>
+        </modify-argument>
+        <modify-argument index="2">
+            <remove-default-expression/>
+        </modify-argument>
+        <modify-argument index="3">
+            <remove-default-expression/>
+        </modify-argument>
+        <modify-argument index="4">
+            <remove-default-expression/>
+        </modify-argument>
+        <modify-argument index="5">
+            <remove-default-expression/>
+        </modify-argument>
+<!--        <modify-argument index="6">
+            <remove-default-expression/>
+        </modify-argument>-->
+    </modify-function>
+<!--
+    <modify-function signature="getOpenFileNames(QWidget*,QString,QString,QString,QString*,QFlags&lt;QFileDialog::Option&gt;)">
+        <access modifier="private"/>
+        <modify-argument index="1">
+            <remove-default-expression/>
+        </modify-argument>
+        <modify-argument index="2">
+            <remove-default-expression/>
+        </modify-argument>
+        <modify-argument index="3">
+            <remove-default-expression/>
+        </modify-argument>
+        <modify-argument index="4">
+            <remove-default-expression/>
+        </modify-argument>
+        <modify-argument index="5">
+            <remove-default-expression/>
+        </modify-argument>
+        <modify-argument index="6">
+            <remove-default-expression/>
+        </modify-argument>
+    </modify-function>
+-->
+    <modify-function signature="getSaveFileName(QWidget*,QString,QString,QString,QString*,QFlags&lt;QFileDialog::Option&gt;)">
+        <modify-argument index="1">
+            <remove-default-expression/>
+        </modify-argument>
+        <modify-argument index="2">
+            <remove-default-expression/>
+        </modify-argument>
+        <modify-argument index="3">
+            <remove-default-expression/>
+        </modify-argument>
+        <modify-argument index="4">
+            <remove-default-expression/>
+        </modify-argument>
+        <modify-argument index="5">
+            <remove-default-expression/>
+        </modify-argument>
+<!--        <modify-argument index="6">
+            <remove-default-expression/>
+        </modify-argument>-->
+    </modify-function>
+
+    <modify-function signature="setIconProvider(QFileIconProvider*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcIconProvider"/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="setItemDelegate(QAbstractItemDelegate*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcItemDelegate"/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="setProxyModel(QAbstractProxyModel*)">
+        <modify-argument index="1">
+            <!-- Reparented -->
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QFileDialog___" quote-before-line="}// class"/>
+        </inject-code>
+<!--
+        <template name="gui.filedialog_get_xxx_filename">
+        public static %TYPE %FUNCTION_NAME(QWidget parent, string caption, String dir, Filter filter, Options options) {
+            QNativePointer np = filter != null ? new QNativePointer(QNativePointer.Type.String) : null;
+            %TYPE returned = %FUNCTION_NAME(parent, caption, dir, filter != null ? filter.filter : "", np, options);
+            if (filter != null)
+                filter.selectedFilter = np.stringValue();
+            return returned;
+        }
+
+        public static %TYPE %FUNCTION_NAME(QWidget parent, String caption, String dir, Filter filter, Option ... options) {
+            QNativePointer np = filter != null ? new QNativePointer(QNativePointer.Type.String) : null;
+            %TYPE returned = %FUNCTION_NAME(parent, caption, dir, filter != null ? filter.filter : "", np, options);
+            if (filter != null)
+                filter.selectedFilter = np.stringValue();
+            return returned;
+        }
+
+        public static %TYPE %FUNCTION_NAME(QWidget parent, String caption, String dir, Filter filter) {
+            return %FUNCTION_NAME(parent, caption, dir, filter, new Options(0));
+        }
+
+        public static %TYPE %FUNCTION_NAME(QWidget parent, String caption, String dir) {
+            return %FUNCTION_NAME(parent, caption, dir, null);
+        }
+
+        public static %TYPE %FUNCTION_NAME(QWidget parent, String caption) {
+            return %FUNCTION_NAME(parent, caption, "");
+        }
+
+        public static %TYPE %FUNCTION_NAME(QWidget parent) {
+            return %FUNCTION_NAME(parent, "");
+        }
+
+        public static %TYPE %FUNCTION_NAME() {
+            return %FUNCTION_NAME(null);
+        }
+
+        </template>
+
+        <inject-code>
+            <insert-template name="gui.filedialog_get_xxx_filename">
+                <replace from="%FUNCTION_NAME" to="getOpenFileName"/>
+                <replace from="%TYPE" to="String"/>
+            </insert-template>
+        </inject-code>
+        <inject-code>
+            <insert-template name="gui.filedialog_get_xxx_filename">
+                <replace from="%FUNCTION_NAME" to="getOpenFileNames"/>
+                <replace from="%TYPE" to="java.util.List&lt;String&gt;"/>
+            </insert-template>
+        </inject-code>
+        <inject-code>
+            <insert-template name="gui.filedialog_get_xxx_filename">
+                <replace from="%FUNCTION_NAME" to="getSaveFileName"/>
+                <replace from="%TYPE" to="String"/>
+            </insert-template>
+        </inject-code>-->
+    </object-type>
+
+  <object-type name="QErrorMessage"/>
+
+  <object-type name="QTabBar">
+    <extra-includes>
+        <include file-name="QIcon" location="global"/>
+    </extra-includes>
+<!--    <modify-function signature="initStyleOption(QStyleOptionTab*,int)const">
+        <access modifier="private"/>
+    </modify-function>
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QTabBar___" quote-before-line="}// class"/>
+        </inject-code>
+-->
+    </object-type>
+
+  <object-type name="QStandardItemModel">
+    <modify-function signature="insertColumn(int,const QModelIndex &amp;)" remove="all"/>
+    <modify-function signature="insertRow(int,const QModelIndex &amp;)" remove="all"/>
+    <modify-function signature="parent()const" remove="all"/>
+    <extra-includes>
+        <include file-name="QStringList" location="global"/>
+        <include file-name="QSize" location="global"/>
+    </extra-includes>
+
+    <modify-function signature="appendColumn(const QList&lt;QStandardItem *&gt;&amp;)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="takeColumn(int)">
+        <modify-argument index="return">
+            <define-ownership class="java" owner="default"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="takeRow(int)">
+        <modify-argument index="return">
+            <define-ownership class="java" owner="default"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="takeHorizontalHeaderItem(int)">
+        <modify-argument index="return">
+            <define-ownership class="java" owner="default"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="takeVerticalHeaderItem(int)">
+        <modify-argument index="return">
+            <define-ownership class="java" owner="default"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="takeItem(int,int)">
+        <modify-argument index="return">
+            <define-ownership class="java" owner="default"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="appendRow(const QList&lt;QStandardItem *&gt;&amp;)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="appendRow(QStandardItem *)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertColumn(int, const QList&lt;QStandardItem *&gt;&amp;)">
+        <modify-argument index="2">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertRow(int, const QList&lt;QStandardItem *&gt;&amp;)">
+        <modify-argument index="2">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertRow(int, QStandardItem *)">
+        <modify-argument index="2">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setHorizontalHeaderItem(int, QStandardItem *)">
+        <modify-argument index="2">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setItem(int, int, QStandardItem *)">
+        <modify-argument index="3">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setItem(int, QStandardItem *)">
+        <modify-argument index="2">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setItemPrototype(const QStandardItem *)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setVerticalHeaderItem(int, QStandardItem *)">
+        <modify-argument index="2">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+
+  <object-type name="QRadioButton">
+<!--    <modify-function signature="initStyleOption(QStyleOptionButton*)const">
+        <access modifier="private"/>
+    </modify-function>
+  
+        <inject-code>
+            <insert-template name="gui.init_style_option">
+                <replace from="%TYPE" to="QStyleOptionButton"/>
+            </insert-template>
+        </inject-code>-->
+    </object-type>
+
+  <object-type name="QScrollBar">
+<!--    <modify-function signature="initStyleOption(QStyleOptionSlider*)const">
+        <access modifier="private"/>
+    </modify-function>
+  
+        <inject-code>
+            <insert-template name="gui.init_style_option">
+                <replace from="%TYPE" to="QStyleOptionSlider"/>
+            </insert-template>
+        </inject-code>-->
+    </object-type>
+
+  <object-type name="QClipboard">
+    <extra-includes>
+        <include file-name="QImage" location="global"/>
+        <include file-name="QPixmap" location="global"/>
+    </extra-includes>
+    <modify-function signature="setMimeData(QMimeData *, QClipboard::Mode)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+
+
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QClipboard___" quote-before-line="}// class"/>
+        </inject-code>
+
+    </object-type>
+
+  <object-type name="QAbstractScrollArea">
+    <modify-function signature="setupViewport(QWidget *)" access="non-final"/>
+    <modify-function signature="addScrollBarWidget(QWidget*,QFlags&lt;Qt::AlignmentFlag&gt;)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setCornerWidget(QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setHorizontalScrollBar(QScrollBar*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="setVerticalScrollBar(QScrollBar*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="setViewport(QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="setupViewport(QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="viewportEvent(QEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QAbstractScrollArea___" quote-before-line="}// class"/>
+        </inject-code>
+
+    </object-type>
+
+  <object-type name="QPaintEngineState">
+    <extra-includes>
+        <include file-name="QPainterPath" location="global"/>
+    </extra-includes>
+	<modify-function signature="painter() const">
+		<store-result/>
+	</modify-function>
+  </object-type>
+
+  <object-type name="QRubberBand">
+<!--    <modify-function signature="initStyleOption(QStyleOptionRubberBand*)const">
+        <access modifier="private"/>
+    </modify-function>-->
+    <modify-function signature="move(int,int)" rename="moveRubberBand"/>
+    <modify-function signature="move(const QPoint &amp;)" rename="moveRubberBand"/>
+    <modify-function signature="resize(int,int)" rename="resizeRubberBand"/>
+    <modify-function signature="resize(const QSize &amp;)" rename="resizeRubberBand"/>
+    <modify-function signature="setGeometry(int,int,int,int)" rename="setRubberBandGeometry"/>
+    <modify-function signature="setGeometry(const QRect &amp;)" rename="setRubberBandGeometry"/>
+  
+<!--        <inject-code>
+            <insert-template name="gui.init_style_option">
+                <replace from="%TYPE" to="QStyleOptionRubberBand"/>
+            </insert-template>
+        </inject-code> -->
+    </object-type>
+
+  <object-type name="QTextLayout">
+    <extra-includes>
+        <include file-name="QTextOption" location="global"/>
+    </extra-includes>
+  </object-type>
+
+  <object-type name="QTableWidget">
+    <modify-function signature="mimeData(const QList&lt;QTableWidgetItem*&gt;)const">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="isSortingEnabled()const" remove="all"/>
+    <modify-function signature="setSortingEnabled(bool)" remove="all"/>
+    <modify-function signature="setHorizontalHeaderItem(int, QTableWidgetItem *)">
+        <modify-argument index="2">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setItem(int, int, QTableWidgetItem *)">
+        <modify-argument index="3">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="takeHorizontalHeaderItem(int)">
+        <modify-argument index="return">
+            <define-ownership class="java" owner="default"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="takeVerticalHeaderItem(int)">
+        <modify-argument index="return">
+            <define-ownership class="java" owner="default"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="takeItem(int,int)">
+        <modify-argument index="return">
+            <define-ownership class="java" owner="default"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setItemPrototype(const QTableWidgetItem *)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setVerticalHeaderItem(int, QTableWidgetItem *)">
+        <modify-argument index="2">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setCellWidget(int,int,QWidget*)">
+        <modify-argument index="3">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setCurrentItem(QTableWidgetItem*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setCurrentItem(QTableWidgetItem*,QFlags&lt;QItemSelectionModel::SelectionFlag&gt;)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setItemSelected(const QTableWidgetItem*,bool)">
+        <remove/>
+    </modify-function>
+    <modify-function signature="isItemSelected(const QTableWidgetItem*)const">
+        <remove/>
+    </modify-function>
+    <modify-function signature="setModel(QAbstractItemModel*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+  <object-type name="QTextDocument">
+    <extra-includes>
+        <include file-name="QTextBlock" location="global"/>
+        <include file-name="QTextFormat" location="global"/>
+        <include file-name="QTextCursor" location="global"/>
+    </extra-includes>
+    <modify-function signature="setDocumentLayout(QAbstractTextDocumentLayout*)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+<!--  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QTextDocument___" quote-before-line="}// class"/>
+        </inject-code>
+-->
+    </object-type>
+
+  <object-type name="QSplitter">
+
+    <modify-function signature="getRange(int,int*,int*)const">
+        <access modifier="private"/>
+    </modify-function>
+    <modify-function signature="addWidget(QWidget *)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertWidget(int, QWidget *)">
+        <modify-argument index="2">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QSplitter___" quote-before-line="}// class"/>
+        </inject-code>
+
+    </object-type>
+
+  <object-type name="QGroupBox">
+<!--    <modify-function signature="initStyleOption(QStyleOptionGroupBox*)const">
+        <access modifier="private"/>
+    </modify-function>
+  
+        <inject-code>
+            <insert-template name="gui.init_style_option">
+                <replace from="%TYPE" to="QStyleOptionGroupBox"/>
+            </insert-template>
+        </inject-code>-->
+    </object-type>
+
+  <object-type name="QStackedWidget">
+    <modify-function signature="addWidget(QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertWidget(int,QWidget*)">
+        <modify-argument index="2">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="removeWidget(QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setCurrentWidget(QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+
+  <object-type name="QSplitterHandle">
+  </object-type>
+
+  <object-type name="QDial">
+<!--    <modify-function signature="initStyleOption(QStyleOptionSlider*)const">
+        <access modifier="private"/>
+    </modify-function>
+  
+        <inject-code>
+            <insert-template name="gui.init_style_option">
+                <replace from="%TYPE" to="QStyleOptionSlider"/>
+            </insert-template>
+        </inject-code>-->
+    </object-type>
+
+  <object-type name="QLineEdit">
+<!--    <modify-function signature="initStyleOption(QStyleOptionFrame*)const">
+        <access modifier="private"/>
+    </modify-function>-->
+    <modify-function signature="setCompleter(QCompleter *)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcCompleter"/>
+        </modify-argument>
+    </modify-function>
+     <modify-function signature="setValidator(const QValidator *)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcValidator"/>
+        </modify-argument>
+    </modify-function>
+<!--  
+        <inject-code>
+            <insert-template name="gui.init_style_option">
+                <replace from="%TYPE" to="QStyleOptionFrame"/>
+            </insert-template>
+        </inject-code>-->
+    </object-type>
+
+  <object-type name="QLCDNumber"/>
+
+  <object-type name="QSplashScreen">
+    <modify-function signature="showMessage(const QString &amp;, int, const QColor &amp;)">
+      <modify-argument index="3">
+        <replace-default-expression with="QColor.Black"/>
+      </modify-argument>
+    </modify-function>
+    <modify-function signature="repaint()" remove="all"/>
+    <modify-function signature="drawContents(QPainter*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+  </object-type>
+
+  <object-type name="QDockWidget">
+<!--    <modify-function signature="initStyleOption(QStyleOptionDockWidget*)const">
+        <access modifier="private"/>
+    </modify-function>
+	
+    <inject-code>
+        <insert-template name="gui.init_style_option">
+            <replace from="%TYPE" to="QStyleOptionDockWidget"/>
+        </insert-template>
+    </inject-code>-->
+    <modify-function signature="setTitleBarWidget(QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setWidget(QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+
+  <object-type name="QAbstractProxyModel">
+    <extra-includes>
+        <include file-name="QItemSelection" location="global"/>
+        <include file-name="QStringList" location="global"/>
+        <include file-name="QSize" location="global"/>
+    </extra-includes>
+
+    <modify-function signature="setSourceModel(QAbstractItemModel *)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcSourceModel"/>
+        </modify-argument>
+    </modify-function>
+
+  </object-type>
+
+  <object-type name="QDesktopWidget">
+  </object-type>
+
+  <object-type name="QFrame">
+  </object-type>
+
+  <object-type name="QTextTable">
+    <modify-function signature="format() const">
+        <rename to="tableFormat"/>
+    </modify-function>
+    <extra-includes>
+        <include file-name="QTextCursor" location="global"/>
+    </extra-includes>
+  </object-type>
+
+  <object-type name="QSpinBox">
+    <modify-function signature="valueChanged(const QString &amp;)">
+        <rename to="valueStringChanged"/>
+    </modify-function>
+  </object-type>
+
+  <object-type name="QTextBrowser">
+    <modify-function signature="highlighted(const QString &amp;)">
+        <rename to="highlightedString"/>
+    </modify-function>
+  </object-type>
+
+  <object-type name="QDoubleSpinBox">
+    <modify-function signature="valueChanged(const QString &amp;)">
+        <rename to="valueStringChanged"/>
+    </modify-function>
+  </object-type>
+
+  <object-type name="QButtonGroup">
+    <modify-function signature="buttonClicked(int)">
+        <rename to="buttonIdClicked"/>
+    </modify-function>
+    <modify-function signature="buttonPressed(int)">
+        <rename to="buttonIdPressed"/>
+    </modify-function>
+    <modify-function signature="buttonReleased(int)">
+        <rename to="buttonIdReleased"/>
+    </modify-function>
+    <modify-function signature="addButton(QAbstractButton *)">
+        <modify-argument index="1">
+            <reference-count action="add" variable-name="__rcButtons"/>
+            <no-null-pointer/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="addButton(QAbstractButton *, int)">
+        <modify-argument index="1">
+            <reference-count action="add" variable-name="__rcButtons"/>
+            <no-null-pointer/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="removeButton(QAbstractButton *)">
+        <modify-argument index="1">
+            <reference-count action="remove" variable-name="__rcButtons"/>
+            <no-null-pointer/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setId(QAbstractButton *,int)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+
+  <object-type name="QToolBar">
+    <modify-function signature="addAction(QAction *)" remove="all"/>
+<!--    <modify-function signature="initStyleOption(QStyleOptionToolBar*)const">
+        <access modifier="private"/>
+    </modify-function>-->
+    <modify-function signature="addAction(QIcon,QString,const QObject*,const char*)">
+        <remove/>
+    </modify-function>
+    <modify-function signature="addAction(QString,const QObject*,const char*)">
+        <remove/>
+    </modify-function>
+    <modify-function signature="addWidget(QWidget*)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertWidget(QAction*,QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+        <modify-argument index="2">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertSeparator(QAction*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QToolBar___" quote-before-line="}// class"/>
+        </inject-code>
+<!--  
+        <inject-code>
+            <insert-template name="gui.init_style_option">
+                <replace from="%TYPE" to="QStyleOptionToolBar"/>
+            </insert-template>
+        </inject-code>
+        <inject-code>
+            <insert-template name="gui.addAction">
+                <replace from="%POST_CALL" to=""/>
+                <replace from=" %END_EXTRA" to=""/>
+                <replace from=" %END_CALL_EXTRA" to=""/>
+                <replace from="%EXTRA" to="QIcon icon,"/>
+                <replace from="%CALL_EXTRA" to="icon,"/>
+            </insert-template>
+        </inject-code>
+        <inject-code>
+            <insert-template name="gui.addAction">
+                <replace from="%POST_CALL" to=""/>
+                <replace from=" %END_EXTRA" to=""/>
+                <replace from=" %END_CALL_EXTRA" to=""/>
+                <replace from="%EXTRA " to=""/>
+                <replace from="%CALL_EXTRA " to=""/>
+            </insert-template>
+        </inject-code> -->
+    </object-type>
+
+  <object-type name="QPaintEngine">
+
+	<modify-function signature="painter() const">
+		<store-result/>
+	</modify-function>
+
+    <modify-function signature="begin(QPaintDevice*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="updateState(QPaintEngineState)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="drawTextItem(QPointF,QTextItem)">
+        <modify-argument index="2" invalidate-after-use="yes"/>
+    </modify-function>
+
+    <extra-includes>
+        <include file-name="QVarLengthArray" location="global"/>
+    </extra-includes>
+    <modify-function signature="setPaintDevice(QPaintDevice*)">
+        <remove/>
+    </modify-function>
+    <modify-field name="state" read="false" write="false"/>
+<!--  
+        <modify-function signature="drawLines(const QLine *, int)">
+            <modify-argument index="1">
+                <replace-type modified-type="qt.gui.QLine[]"/>
+                <conversion-rule class="shell">
+                jobjectArray %out = qtjambi_from_array(__jni_env, %in, %2,
+                                                       "QLine", "com/trolltech/qt/gui/");
+                </conversion-rule>
+                <conversion-rule class="native">
+                QVarLengthArray&lt;QLine, 32&gt; __lines;
+                int __size = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
+                for (int i=0; i&lt;__size; ++i)
+                    __lines.append(*(QLine *)qtjambi_to_object(__jni_env, __jni_env-&gt;GetObjectArrayElement((jobjectArray) %in, i)));
+                const QLine *%out = %1 == 0 ? 0 : __lines.constData();
+                </conversion-rule>
+
+            </modify-argument>
+            <modify-argument index="2">
+                <remove-argument/>
+                <conversion-rule class="shell">
+                /* nothing */
+                </conversion-rule>
+                <conversion-rule class="native">
+                int %out = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>
+
+        <modify-function signature="drawLines(const QLineF *, int)">
+            <modify-argument index="1">
+                <replace-type modified-type="qt.gui.QLineF[]"/>
+                <conversion-rule class="shell">
+                jobjectArray %out = qtjambi_from_array(__jni_env, %in, %2,
+                                                       "QLineF", "com/trolltech/qt/gui/");
+                </conversion-rule>
+                <conversion-rule class="native">
+                QVarLengthArray&lt;QLineF, 32&gt; __data;
+                int __size = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
+                for (int i=0; i&lt;__size; ++i)
+                    __data.append(*(QLineF *)qtjambi_to_object(__jni_env, __jni_env-&gt;GetObjectArrayElement((jobjectArray) %in, i)));
+                const QLineF *%out = %1 == 0 ? 0 : __data.constData();
+                </conversion-rule>
+            </modify-argument>
+            <modify-argument index="2">
+                <remove-argument/>
+                <conversion-rule class="shell">
+                /* nothing */
+                </conversion-rule>
+                <conversion-rule class="native">
+                int %out = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>
+
+        <modify-function signature="drawRects(const QRectF *, int)">
+            <modify-argument index="1">
+                <replace-type modified-type="qt.core.QRectF[]"/>
+                <conversion-rule class="shell">
+                jobjectArray %out = qtjambi_from_array(__jni_env, %in, %2,
+                                                       "QRectF", "com/trolltech/qt/core/");
+                </conversion-rule>
+                <conversion-rule class="native">
+                QVarLengthArray&lt;QRectF, 32&gt; __data;
+                int __size = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
+                for (int i=0; i&lt;__size; ++i)
+                    __data.append(*(QRectF *)qtjambi_to_object(__jni_env, __jni_env-&gt;GetObjectArrayElement((jobjectArray) %in, i)));
+                const QRectF *%out = %1 == 0 ? 0 : __data.constData();
+                </conversion-rule>
+            </modify-argument>
+            <modify-argument index="2">
+                <remove-argument/>
+                <conversion-rule class="shell">
+                /* nothing */
+                </conversion-rule>
+                <conversion-rule class="native">
+                int %out = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>
+
+        <modify-function signature="drawRects(const QRect *, int)">
+            <modify-argument index="1">
+                <replace-type modified-type="qt.core.QRect[]"/>
+                <conversion-rule class="shell">
+                jobjectArray %out = qtjambi_from_array(__jni_env, %in, %2,
+                                                       "QRect", "com/trolltech/qt/core/");
+                </conversion-rule>
+                <conversion-rule class="native">
+                QVarLengthArray&lt;QRect, 32&gt; __data;
+                int __size = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
+                for (int i=0; i&lt;__size; ++i)
+                    __data.append(*(QRect *)qtjambi_to_object(__jni_env, __jni_env-&gt;GetObjectArrayElement((jobjectArray) %in, i)));
+                const QRect *%out = %1 == 0 ? 0 : __data.constData();
+                </conversion-rule>
+            </modify-argument>
+            <modify-argument index="2">
+                <remove-argument/>
+                <conversion-rule class="shell">
+                /* nothing */
+                </conversion-rule>
+                <conversion-rule class="native">
+                int %out = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>
+
+        <modify-function signature="drawPoints(const QPoint *, int)">
+            <modify-argument index="1">
+                <replace-type modified-type="qt.core.QPoint[]"/>
+                <conversion-rule class="shell">
+                jobjectArray %out = qtjambi_from_array(__jni_env, %in, %2,
+                                                       "QPoint", "com/trolltech/qt/core/");
+                </conversion-rule>
+                <conversion-rule class="native">
+                QVarLengthArray&lt;QPoint, 32&gt; __data;
+                int __size = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
+                for (int i=0; i&lt;__size; ++i)
+                    __data.append(*(QPoint *)qtjambi_to_object(__jni_env, __jni_env-&gt;GetObjectArrayElement((jobjectArray) %in, i)));
+                const QPoint *%out = %1 == 0 ? 0 : __data.constData();
+                </conversion-rule>
+            </modify-argument>
+
+            <modify-argument index="2">
+                <remove-argument/>
+                <conversion-rule class="shell">
+                /* nothing */
+                </conversion-rule>
+                <conversion-rule class="native">
+                int %out = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>
+
+        <modify-function signature="drawPoints(const QPointF *, int)">
+            <modify-argument index="1">
+                <replace-type modified-type="qt.core.QPointF[]"/>
+                <conversion-rule class="shell">
+                jobjectArray %out = qtjambi_from_array(__jni_env, %in, %2,
+                                                       "QPointF", "com/trolltech/qt/core/");
+                </conversion-rule>
+                <conversion-rule class="native">
+                QVarLengthArray&lt;QPointF, 32&gt; __data;
+                int __size = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
+                for (int i=0; i&lt;__size; ++i)
+                    __data.append(*(QPointF *)qtjambi_to_object(__jni_env, __jni_env-&gt;GetObjectArrayElement((jobjectArray) %in, i)));
+                const QPointF *%out = %1 == 0 ? 0 : __data.constData();
+                </conversion-rule>
+            </modify-argument>
+            <modify-argument index="2">
+                <remove-argument/>
+                <conversion-rule class="shell">
+                /* nothing */
+                </conversion-rule>
+                <conversion-rule class="native">
+                int %out = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>
+
+        <modify-function signature="drawPolygon(const QPoint *, int, QPaintEngine::PolygonDrawMode)">
+            <modify-argument index="1">
+                <replace-type modified-type="qt.core.QPoint[]"/>
+                <conversion-rule class="shell">
+                jobjectArray %out = qtjambi_from_array(__jni_env, %in, %2,
+                                                       "QPoint", "com/trolltech/qt/core/");
+                </conversion-rule>
+                <conversion-rule class="native">
+                QVarLengthArray&lt;QPoint, 32&gt; __data;
+                int __size = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
+                for (int i=0; i&lt;__size; ++i)
+                    __data.append(*(QPoint *)qtjambi_to_object(__jni_env, __jni_env-&gt;GetObjectArrayElement((jobjectArray) %in, i)));
+                const QPoint *%out = %1 == 0 ? 0 : __data.constData();
+                </conversion-rule>
+            </modify-argument>
+            <modify-argument index="2">
+                <remove-argument/>
+                <conversion-rule class="shell">
+                /* nothing */
+                </conversion-rule>
+                <conversion-rule class="native">
+                int %out = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>
+
+        <modify-function signature="drawPolygon(const QPointF *, int, QPaintEngine::PolygonDrawMode)">
+            <modify-argument index="1">
+                <replace-type modified-type="qt.core.QPointF[]"/>
+                <conversion-rule class="shell">
+                jobjectArray %out = qtjambi_from_array(__jni_env, %in, %2,
+                                                       "QPointF", "com/trolltech/qt/core/");
+                </conversion-rule>
+                <conversion-rule class="native">
+                QVarLengthArray&lt;QPointF, 32&gt; __data;
+                int __size = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
+                for (int i=0; i&lt;__size; ++i)
+                    __data.append(*(QPointF *)qtjambi_to_object(__jni_env, __jni_env-&gt;GetObjectArrayElement((jobjectArray) %in, i)));
+                const QPointF *%out = %1 == 0 ? 0 : __data.constData();
+                </conversion-rule>
+            </modify-argument>
+            <modify-argument index="2">
+                <remove-argument/>
+                <conversion-rule class="shell">
+                /* nothing */
+                </conversion-rule>
+                <conversion-rule class="native">
+                int %out = %1 == 0 ? 0 : __jni_env-&gt;GetArrayLength((jarray) %1);
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>
+		-->
+    </object-type>
+
+  <object-type name="QAbstractTableModel">
+<!--  <modify-function signature="parent(const QModelIndex &amp;)const" remove="all"/>
+  <modify-function signature="hasChildren(const QModelIndex &amp;)const" remove="all"/> -->
+    <extra-includes>
+        <include file-name="QStringList" location="global"/>
+        <include file-name="QSize" location="global"/>
+    </extra-includes>
+  </object-type>
+
+  <object-type name="QGuiSignalMapper">
+        <modify-function signature="setMapping(QObject*,QWidget*)">
+            <modify-argument index="1">
+                <reference-count action="add" declare-variable="qt.core.QSignalMapper" variable-name="__rcMappings"/>
+            </modify-argument>
+            <inject-code class="java" position="end">
+                <argument-map index="1" meta-name="%1"/>
+                <argument-map index="2" meta-name="%2"/>
+                java.util.Hashtable&lt;qt.core.QObject, Object&gt; __rcWidgetForObject = (java.util.Hashtable&lt;qt.core.QObject, Object&gt;) qt.GeneratorUtilities.fetchField(this, qt.core.QSignalMapper.class, "__rcWidgetForObject");
+                if (%2 == null)
+                    __rcWidgetForObject.remove(%1);
+                else
+                    __rcWidgetForObject.put(%1,%2);
+            </inject-code>
+        </modify-function>
+    </object-type>
+
+  <object-type name="QComboBox">
+<!--    <modify-function signature="initStyleOption(QStyleOptionComboBox*)const">
+        <access modifier="private"/>
+    </modify-function>-->
+    <modify-function signature="setCompleter(QCompleter*)">
+        <modify-argument index="1">
+            <reference-count variable-name="__rcCompleter" action="set"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setValidator(const QValidator*)">
+        <modify-argument index="1">
+            <reference-count variable-name="__rcValidator" action="set"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setItemDelegate(QAbstractItemDelegate *)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+            <no-null-pointer/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setView(QAbstractItemView *)">
+        <modify-argument index="1">
+            <no-null-pointer/>
+            <!-- Safe to ignore because combo box reparents view -->
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setLineEdit(QLineEdit *)">
+        <modify-argument index="1">
+            <no-null-pointer/>
+            <!-- Safe to ignore because combo box reparents line edit -->
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setModel(QAbstractItemModel *)">
+        <modify-argument index="1">
+            <no-null-pointer/>
+            <reference-count action="set" variable-name="__rcModel"/>
+        </modify-argument>
+    </modify-function>
+<!--    <inject-code>
+        <insert-template name="gui.init_style_option">
+            <replace from="%TYPE" to="QStyleOptionComboBox"/>
+        </insert-template>
+    </inject-code>-->
+    <inject-code>
+        <import-file name="typesystem_gui-java.java" quote-after-line="class QComboBox___" quote-before-line="}// class"/>
+    </inject-code>
+    <modify-function signature="activated(int)">&gt;
+        <rename to="activatedIndex"/>
+    </modify-function>
+    <modify-function signature="currentIndexChanged(const QString &amp;)">
+        <rename to="currentStringChanged"/>
+    </modify-function>
+    <modify-function signature="highlighted(int)">
+        <rename to="highlightedIndex"/>
+    </modify-function>
+
+      <modify-function signature="autoCompletion()const" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="autoCompletionCaseSensitivity()const" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="setAutoCompletion(bool)" remove="all"/> <!--### Obsolete in 4.3-->
+      <modify-function signature="setAutoCompletionCaseSensitivity(Qt::CaseSensitivity)" remove="all"/> <!--### Obsolete in 4.3-->
+  </object-type>
+
+  <object-type name="QTextEdit">
+    <extra-includes>
+        <include file-name="QTextCursor" location="global"/>
+    </extra-includes>
+    <modify-function signature="setDocument(QTextDocument*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcDocument"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertFromMimeData(const QMimeData*)    ">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+
+  <object-type name="QPrinter" delete-in-main-thread="yes">
+  
+  
+    <modify-function signature="setEngines(QPrintEngine*,QPaintEngine*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcPrintEngine"/>
+        </modify-argument>
+        <modify-argument index="2">
+            <reference-count action="set" variable-name="__rcPaintEngine"/>
+        </modify-argument>
+    </modify-function>
+  
+        <modify-function signature="getPageMargins(double*,double*,double*,double*,QPrinter::Unit)const" access="private"/>
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QPrinter___" quote-before-line="}// class"/>
+        </inject-code>
+    </object-type>
+
+  <object-type name="QAction">
+      <modify-function signature="setMenu(QMenu*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcMenu"/>
+        </modify-argument>
+    </modify-function>
+
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QAction___" quote-before-line="}// class"/>
+        </inject-code>
+<!--
+        <modify-function signature="setActionGroup(QActionGroup*)">
+            <modify-argument index="1">
+                <reference-count action="ignore"/>
+            </modify-argument>
+            <inject-code position="end">
+                <argument-map index="1" meta-name="%1"/>
+            java.util.Collection&lt;Object&gt; __rcTmp = null;
+            if (__rcActionGroup != null) {
+                __rcTmp = (java.util.Collection&lt;Object&gt;)qt.GeneratorUtilities.fetchField(__rcActionGroup, QActionGroup.class, "__rcActions");
+                while (__rcTmp.contains(this))
+                    __rcTmp.remove(this);
+            }
+            __rcActionGroup = %1;
+            if (__rcActionGroup != null) {
+                __rcTmp = (java.util.Collection&lt;Object&gt;)qt.GeneratorUtilities.fetchField(__rcActionGroup, QActionGroup.class, "__rcActions");
+                __rcTmp.add(this);
+            }
+            </inject-code>
+        </modify-function>
+		-->
+    </object-type>
+
+  <object-type name="QPainter">
+<!--  <add-class name="QPaintEngineState"/> -->
+    <extra-includes>
+      <include file-name="QWidget" location="global"/>
+      <include file-name="QPainterPath" location="global"/>
+      <include file-name="QPixmap" location="global"/>
+	  <include file-name="qt.gui.QGradient" location="java"/>
+    </extra-includes>
+
+    <modify-function signature="drawText(const QPointF &amp;, const QString &amp;, int, int)" remove="all"/>
+
+    <modify-function signature="drawConvexPolygon(const QPoint *, int)">
+      <access modifier="private"/>
+    </modify-function>
+    <modify-function signature="drawConvexPolygon(const QPointF *, int)">
+      <access modifier="private"/>
+    </modify-function>
+    <modify-function signature="drawLines(const QLine *, int)">
+        <access modifier="private"/>
+    </modify-function>
+    <modify-function signature="drawLines(const QLineF *, int)">
+        <access modifier="private"/>
+    </modify-function>
+
+    <modify-function signature="drawPoints(const QPoint *, int)">
+        <access modifier="private"/>
+    </modify-function>
+    <modify-function signature="drawPoints(const QPointF *, int)">
+        <access modifier="private"/>
+    </modify-function>
+    
+    <modify-function signature="drawPolygon(const QPoint *, int, Qt::FillRule)">
+        <access modifier="private"/>
+    </modify-function>
+    <modify-function signature="drawPolygon(const QPointF *, int, Qt::FillRule)">
+        <access modifier="private"/>
+    </modify-function>
+
+    <modify-function signature="drawPolyline(const QPoint *, int)">
+        <access modifier="private"/>
+    </modify-function>
+    <modify-function signature="drawPolyline(const QPointF *, int)">
+        <access modifier="private"/>
+    </modify-function>
+    
+    <modify-function signature="drawRects(const QRect *, int)">
+        <access modifier="private"/>
+    </modify-function>
+    <modify-function signature="drawRects(const QRectF *, int)">
+        <access modifier="private"/>
+    </modify-function>
+    
+    <!-- removed stuff -->
+    <modify-function signature="drawRects(const QVector&lt;QRect&gt; &amp;)">
+        <remove/>
+    </modify-function>
+    <modify-function signature="drawRects(const QVector&lt;QRectF&gt; &amp;)">
+        <remove/>
+    </modify-function>
+
+    <modify-function signature="drawLines(const QVector&lt;QLine&gt; &amp;)">
+        <remove/>
+    </modify-function>
+    <modify-function signature="drawLines(const QVector&lt;QLineF&gt; &amp;)">
+        <remove/>
+    </modify-function>
+
+    <modify-function signature="drawLines(const QVector&lt;QPoint&gt; &amp;)">
+        <remove/>
+    </modify-function>
+    <modify-function signature="drawLines(const QVector&lt;QPointF&gt; &amp;)">
+        <remove/>
+    </modify-function>
+
+    <modify-function signature="drawLines(const QPoint *, int)">
+        <remove/>
+    </modify-function>
+    <modify-function signature="drawLines(const QPointF *, int)">
+        <remove/>
+    </modify-function>
+
+
+    <modify-function signature="QPainter(QPaintDevice *)">
+        <modify-argument index="1">
+            <no-null-pointer/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="begin(QPaintDevice *)">
+        <modify-argument index="1">
+            <no-null-pointer/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="initFrom(const QWidget *)">
+        <modify-argument index="1">
+            <no-null-pointer/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setRedirected(const QPaintDevice *, QPaintDevice *, const QPoint &amp;)">
+        <modify-argument index="1">
+            <no-null-pointer/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="restoreRedirected(const QPaintDevice *)">
+        <modify-argument index="1">
+            <no-null-pointer/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="drawText(QRect,int,QString,QRect*)">
+        <access modifier="private"/>
+        <modify-argument index="4">
+            <remove-default-expression/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="drawText(QRectF,int,QString,QRectF*)">
+        <access modifier="private"/>
+        <modify-argument index="4">
+            <remove-default-expression/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="drawText(int,int,int,int,int,QString,QRect*)">
+        <access modifier="private"/>
+        <modify-argument index="7">
+            <remove-default-expression/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="redirected(const QPaintDevice*,QPoint*)">
+        <access modifier="private"/>
+        <modify-argument index="2">
+            <remove-default-expression/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="matrix()const" remove="all"/> <!--### Obsolete in 4.3-->
+    <modify-function signature="matrixEnabled()const" remove="all"/> <!--### Obsolete in 4.3-->
+    <modify-function signature="setMatrix(QMatrix, bool)" remove="all"/> <!--### Obsolete in 4.3-->
+    <modify-function signature="setMatrixEnabled(bool)" remove="all"/> <!--### Obsolete in 4.3-->
+  
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QPainter___" quote-before-line="}// class"/>
+        </inject-code>
+<!--
+    <inject-code class="destructor-function">
+      if (((QPainter *) ptr)-&gt;isActive()) {
+          qWarning("QPainter: trying to delete an active painter, "
+                       "did you forget to call \"end()\"?\n");
+              return;
+          }
+        </inject-code>
+
+        <template name="gui.painter_draw_text_general">
+        public final void drawText(%RECT_ARGUMENTS, int flags, String text, %RECT_TYPE boundingRect) {
+            drawText(%RECT_CALL_ARGUMENTS, flags, text, boundingRect == null ? null : boundingRect.nativePointer());
+        }
+
+        public final void drawText(%RECT_ARGUMENTS, int flags, String text) {
+            drawText(%RECT_CALL_ARGUMENTS, flags, text, (%RECT_TYPE) null);
+        }
+        </template>
+
+        <template name="gui.painter_draw_text_qrect">
+            <insert-template name="gui.painter_draw_text_general">
+                <replace from="%RECT_ARGUMENTS" to="%RECT_TYPE rectangle"/>
+                <replace from="%RECT_CALL_ARGUMENTS" to="rectangle"/>
+            </insert-template>
+        </template>
+        <inject-code>
+            <insert-template name="gui.painter_draw_text_qrect">
+                <replace from="%RECT_TYPE" to="qt.core.QRect"/>
+            </insert-template>
+        </inject-code>
+        <inject-code>
+            <insert-template name="gui.painter_draw_text_qrect">
+                <replace from="%RECT_TYPE" to="qt.core.QRectF"/>
+            </insert-template>
+        </inject-code>
+        <inject-code>
+            <insert-template name="gui.painter_draw_text_general">
+                <replace from="%RECT_TYPE" to="qt.core.QRect"/>
+                <replace from="%RECT_ARGUMENTS" to="int x, int y, int width, int height"/>
+                <replace from="%RECT_CALL_ARGUMENTS" to="x, y, width, height"/>
+            </insert-template>
+        </inject-code>
+
+
+        <modify-function signature="setRedirected(const QPaintDevice*, QPaintDevice*, const QPoint &amp;)">
+            <modify-argument index="1">
+                <reference-count action="ignore"/>
+            </modify-argument>
+            <modify-argument index="2">
+                <reference-count action="ignore"/>
+            </modify-argument>
+            <inject-code position="end">
+                <argument-map index="1" meta-name="%1"/>
+                <argument-map index="2" meta-name="%2"/>
+            __rcRedirections.push(%1);
+            __rcRedirections.push(%2);
+            </inject-code>
+        </modify-function>
+        <modify-function signature="restoreRedirected(const QPaintDevice*)">
+            <inject-code position="end">
+            if (!__rcRedirections.empty()) __rcRedirections.pop();
+            if (!__rcRedirections.empty()) __rcRedirections.pop();
+            </inject-code>
+        </modify-function>
+		-->
+    </object-type>
+
+  <object-type name="QApplication">
+    <extra-includes>
+      <include file-name="QBasicTimer" location="global"/>
+      <include file-name="QFont" location="global"/>
+      <include file-name="QFontMetrics" location="global"/>
+      <include file-name="QPalette" location="global"/>
+      <include file-name="QIcon" location="global"/>
+      <include file-name="QLocale" location="global"/>
+
+      <include file-name="qt.qtd.Str" location="java"/>
+    </extra-includes>
+
+    <!-- qtd2 -->
+    <modify-function signature="inputContext() const" remove="all"/>
+    <modify-function signature="setStyle(QStyle*)" remove="all"/>
+    <modify-function signature="setStyle(const QString&amp;)" remove="all"/>
+    <modify-function signature="style()" remove="all"/>
+
+
+    <modify-function signature="QApplication(int &amp;, char  **, int)">
+        <access modifier="private"/>
+    </modify-function>
+    <modify-function signature="QApplication(int &amp;, char **, QApplication::Type, int)">
+        <remove/>
+    </modify-function>
+    <modify-function signature="QApplication(int &amp;, char **, bool, int)">
+        <remove/>
+    </modify-function>
+
+    <modify-function signature="font(const char*)">
+        <remove/>
+    </modify-function>
+    <modify-function signature="setFont(QFont,const char*)">
+        <access modifier="private"/>
+        <modify-argument index="2">
+            <remove-default-expression/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="palette(const char*)">
+        <remove/>
+    </modify-function>
+    <modify-function signature="setPalette(QPalette,const char*)">
+        <access modifier="private"/>
+        <modify-argument index="2">
+            <remove-default-expression/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="overrideCursor()">
+        <access modifier="private"/>
+        <rename to="overrideCursor_private"/>
+    </modify-function>
+
+    <modify-function signature="setInputContext(QInputContext*)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setActiveWindow(QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+<!--    <modify-function signature="setStyle(QStyle*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+  -->
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QApplication___" quote-before-line="}// class"/>
+        </inject-code>
+<!--        <modify-function signature="QApplication(int &amp;, char  **, int)">
+            <inject-code class="shell">
+                qtjambi_register_variant_handler();
+            </inject-code>
+        </modify-function>-->
+        <template name="gui.application_char_pointer_function">
+        public static %RETURN_TYPE %FUNCTION_NAME(%PRE_ARGUMENTS %COMMA QByteArray className) {
+            return %FUNCTION_NAME(%PRE_CALL_ARGUMENTS %COMMA className == null ? null : className.data());
+        }
+        </template>
+    </object-type>
+
+  <object-type name="QCommandLinkButton"/>
+  <object-type name="QFileSystemModel">
+    <modify-function signature="setIconProvider(QFileIconProvider*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcIconProvider"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+  <object-type name="QFormLayout">
+    <modify-function signature="addRow(QWidget*,QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+        <modify-argument index="2">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="addRow(QLayout*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="addRow(QWidget*,QLayout*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+        <modify-argument index="2">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="addRow(QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="addRow(QString,QLayout*)">
+        <modify-argument index="2">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="addRow(QString,QWidget*)">
+        <modify-argument index="2">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertRow(int,QLayout*)">
+        <modify-argument index="2">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertRow(int,QWidget*,QLayout*)">
+        <modify-argument index="2">
+            <reference-count action="ignore"/>
+        </modify-argument>
+        <modify-argument index="3">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertRow(int,QWidget*,QWidget*)">
+        <modify-argument index="2">
+            <reference-count action="ignore"/>
+        </modify-argument>
+        <modify-argument index="3">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertRow(int,QWidget*)">
+        <modify-argument index="2">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertRow(int,QString,QLayout*)">
+        <modify-argument index="3">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertRow(int,QString,QWidget*)">
+        <modify-argument index="3">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setLayout(int,QFormLayout::ItemRole,QLayout*)">
+        <modify-argument index="3">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setWidget(int,QFormLayout::ItemRole,QWidget*)">
+        <modify-argument index="3">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setItem(int,QFormLayout::ItemRole,QLayoutItem*)" access="private" rename="setItem_private">
+        <modify-argument index="3">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="addItem(QLayoutItem*)">
+        <modify-argument index="1">
+            <define-ownership class="java" owner="c++"/>
+        </modify-argument>
+    </modify-function>
+  
+        <modify-function signature="getLayoutPosition(QLayout*,int*,QFormLayout::ItemRole*)const" access="private"/>
+        <modify-function signature="getWidgetPosition(QWidget*,int*,QFormLayout::ItemRole*)const" access="private"/>
+        <modify-function signature="getItemPosition(int,int*,QFormLayout::ItemRole*)const" access="private"/>
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QFormLayout___" quote-before-line="}// class"/>
+        </inject-code>
+    </object-type>
+  <object-type name="QGraphicsGridLayout" delete-in-main-thread="yes">
+    <modify-function signature="addItem(QGraphicsLayoutItem*,int,int,QFlags&lt;Qt::AlignmentFlag&gt;)">
+        <modify-argument index="1">
+            <reference-count action="add" variable-name="__rcItems"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="addItem(QGraphicsLayoutItem*,int,int,int,int,QFlags&lt;Qt::AlignmentFlag&gt;)">
+        <modify-argument index="1">
+            <reference-count action="add" variable-name="__rcItems"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setAlignment(QGraphicsLayoutItem*,QFlags&lt;Qt::AlignmentFlag&gt;)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+  <object-type name="QGraphicsLayout" delete-in-main-thread="yes">
+
+    <modify-function signature="widgetEvent(QEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="setParentLayoutItem(QGraphicsLayoutItem*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcParentLayoutItem"/>
+        </modify-argument>
+    </modify-function>
+  
+       <!-- <modify-function signature="getContentsMargins(double*,double*,double*,double*)const" access="private"/> -->
+	<modify-function signature="getContentsMargins(double*,double*,double*,double*)const" remove="all"/>
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class Subclass_of_QGraphicsLayoutItem___" quote-before-line="}// class"/>
+        </inject-code>
+    </object-type>
+  <interface-type name="QGraphicsLayoutItem" delete-in-main-thread="yes">
+  	<modify-function signature="setExtension(QGraphicsItem::Extension,QVariant)" remove="all"/>
+	<modify-function signature="supportsExtension(QGraphicsItem::Extension)const" remove="all"/>
+	<modify-function signature="getContentsMargins(double*,double*,double*,double*)const" remove="all"/>
+  <!--
+    <modify-function signature="setParentLayoutItem(QGraphicsLayoutItem*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcParentLayoutItem"/>
+        </modify-argument>
+    </modify-function>
+  
+        <modify-function signature="getContentsMargins(double*,double*,double*,double*)const" access="private"/>
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class Subclass_of_QGraphicsLayoutItem___" quote-before-line="}// class"/>
+        </inject-code>
+        <inject-code class="interface">
+            public QMarginsF getContentsMargins();
+        </inject-code>  
+    -->
+    </interface-type>
+ 
+  <object-type name="QGraphicsLinearLayout" delete-in-main-thread="yes">
+    <modify-function signature="addItem(QGraphicsLayoutItem*)">
+        <modify-argument index="1">
+            <reference-count action="add" variable-name="__rcItems"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertItem(int,QGraphicsLayoutItem*)">
+        <modify-argument index="2">
+            <reference-count action="add" variable-name="__rcItems"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="removeItem(QGraphicsLayoutItem*)">
+        <modify-argument index="1">
+            <reference-count action="remove" variable-name="__rcItems"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setAlignment(QGraphicsLayoutItem*,QFlags&lt;Qt::AlignmentFlag&gt;)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setStretchFactor(QGraphicsLayoutItem*,int)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+  <object-type name="QGraphicsProxyWidget">
+    <modify-function signature="getContentsMargins(double*,double*,double*,double*)const" remove="all" />  
+    <!--
+    <modify-function signature="setWidget(QWidget*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+        <inject-code>
+            <argument-map index="1" meta-name="%1"/>
+            if (%1 != null)
+                %1.disableGarbageCollection();
+            else if (widget() != null)
+                widget().reenableGarbageCollection();
+        </inject-code>
+    </modify-function>
+    -->
+    </object-type> <!-- a QObject so main-thread delete redundant -->
+  <object-type name="QGraphicsWidget">  <!-- a QObject so main-thread delete redundant -->
+    <!-- Duplicate function to QObject::children() to override accidental shadowing which is not present in Jambi -->
+    <modify-function signature="children()const" remove="all"/>
+    <modify-function signature="setLayout(QGraphicsLayout*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcLayout"/>
+        </modify-argument>
+    </modify-function>
+
+    <modify-function signature="changeEvent(QEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="closeEvent(QCloseEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="grabKeyboardEvent(QEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="grabMouseEvent(QEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="hideEvent(QHideEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="moveEvent(QGraphicsSceneMoveEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="paintWindowFrame(QPainter*,const QStyleOptionGraphicsItem*,QWidget*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="resizeEvent(QGraphicsSceneResizeEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="showEvent(QShowEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="ungrabKeyboardEvent(QEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="ungrabMouseEvent(QEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+    <modify-function signature="windowFrameEvent(QEvent*)">
+        <modify-argument index="1" invalidate-after-use="yes"/>
+    </modify-function>
+
+    <modify-function signature="setStyle(QStyle*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcStyle"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setTabOrder(QGraphicsWidget*,QGraphicsWidget*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+        <modify-argument index="2">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+  <!--
+        <modify-function signature="getContentsMargins(double*,double*,double*,double*)const" access="private"/>
+        <modify-function signature="getWindowFrameMargins(double*,double*,double*,double*)const" access="private"/>
+   
+        <inject-code>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class QGraphicsWidget___" quote-before-line="}// class"/>
+            <import-file name="typesystem_gui-java.java" quote-after-line="class Subclass_of_QGraphicsLayoutItem___" quote-before-line="}// class"/>
+        </inject-code>
+    -->
+        <modify-function signature="initStyleOption(QStyleOption*)const">
+	    <!--
+            <modify-argument index="1">
+                <replace-type modified-type="qt.gui.QStyleOption"/>
+                <conversion-rule class="shell">
+                    jobject %out = qtjambi_from_object(__jni_env, %in, "QStyleOption", "com/trolltech/qt/gui/", "Lcom_trolltech_qt_gui_QStyleOption_2", false);
+                    jobject __tmp = %out;
+                </conversion-rule>
+                <conversion-rule class="native">
+                    QStyleOption *%out = (QStyleOption *) qtjambi_to_object(__jni_env, %in);
+                </conversion-rule>
+            </modify-argument>
+            <modify-argument index="return">
+                <conversion-rule class="shell">
+                    // Make sure the java object is not usable after this, since
+                    // the QStyleOption* may be deleted at any time.
+                    qtjambi_invalidate_object(__jni_env, __tmp);
+                    __tmp = 0;
+                </conversion-rule>
+            </modify-argument>
+	    -->
+        </modify-function>
+
+        <modify-function signature="paintWindowFrame(QPainter*,const QStyleOptionGraphicsItem*,QWidget*)">
+	<!--
+            <modify-argument index="2">
+                <conversion-rule class="shell">
+                    jobject %out = qtjambi_from_object(__jni_env, %in, "QStyleOptionGraphicsItem", "com/trolltech/qt/gui/", "Lcom_trolltech_qt_gui_QStyleOption_2", true);
+                </conversion-rule>
+                <conversion-rule class="native">
+                    const QStyleOptionGraphicsItem *%out = (QStyleOptionGraphicsItem *) qtjambi_to_object(__jni_env, %in);
+                </conversion-rule>
+                <replace-type modified-type="qt.gui.QStyleOptionGraphicsItem"/>
+            </modify-argument>
+	 -->
+        </modify-function>
+
+    </object-type>
+  <object-type name="QPlainTextDocumentLayout"/>
+  <object-type name="QPlainTextEdit">
+    <modify-function signature="setDocument(QTextDocument*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcDocument"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="insertFromMimeData(const QMimeData*)">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+  </object-type>
+  <object-type name="QPrintPreviewDialog">
+        <modify-function signature="open(QObject *, const char *)" remove="all"/> <!-- # TODO -->
+  </object-type>
+  <object-type name="QPrintPreviewWidget"/>
+  <object-type name="QStyledItemDelegate">
+    <modify-function signature="setItemEditorFactory(QItemEditorFactory*)">
+        <modify-argument index="1">
+            <reference-count action="set" variable-name="__rcItemEditorFactory"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setEditorData(QWidget*,QModelIndex)const">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+    <modify-function signature="setModelData(QWidget*,QAbstractItemModel*,QModelIndex)const">
+        <modify-argument index="1">
+            <reference-count action="ignore"/>
+        </modify-argument>
+    </modify-function>
+<!--  
+        <modify-function signature="initStyleOption(QStyleOptionViewItem*,QModelIndex)const">
+            <modify-argument index="1">
+                <conversion-rule class="shell">
+                    jobject %out = qtjambi_from_object(__jni_env, %in, "QStyleOptionViewItem", "com/trolltech/qt/gui/", "Lcom_trolltech_qt_gui_QStyleOption_2", false);
+                </conversion-rule>
+                <conversion-rule class="native">
+                    QStyleOptionViewItem *%out = (QStyleOptionViewItem *) qtjambi_to_object(__jni_env, %in);
+                </conversion-rule>
+                <replace-type modified-type="qt.gui.QStyleOptionViewItem"/>
+            </modify-argument>
+        </modify-function>
+        -->
+    </object-type>
+
+  <interface-type name="QAccessibleFactoryInterface" java-name="QAbstractAccessibleFactory"/>
+  <interface-type name="QIconEngineFactoryInterfaceV2" java-name="QAbstractIconEngineFactoryV2"/>
+  <interface-type name="QImageIOHandlerFactoryInterface" java-name="QAbstractImageIOHandlerFactory"/>
+  <interface-type name="QInputContextFactoryInterface" java-name="QAbstractInputContextFactory"/>
+  <interface-type name="QStyleFactoryInterface" java-name="QAbstractStyleFactory"/>
+  <interface-type name="QTextCodecFactoryInterface" java-name="QAbstractTextCodecFactory"/>
+  <interface-type name="QPictureFormatInterface" java-name="QAbstractPictureFormat">
+<!--        <modify-function signature="loadPicture(QString,QString,QPicture*)">
+            <modify-argument index="3">
+                <replace-type modified-type="QPicture"/>
+                <conversion-rule class="shell">
+                    jobject %out = qtjambi_from_object(__jni_env, %in, "QPicture", "com/trolltech/qt/gui/", false);
+                    jobject __tmp = %out;
+                </conversion-rule>
+                <conversion-rule class="native">
+                    QPicture *%out = (QPicture *) qtjambi_to_object(__jni_env, %in);
+                </conversion-rule>
+            </modify-argument>
+            <modify-argument index="return">
+                <conversion-rule class="shell">
+                    // Make sure the java object is not usable after this, since
+                    // the QPicture* may be deleted at any time.
+                    qtjambi_invalidate_object(__jni_env, __tmp);
+                    __tmp = 0;
+                    bool %out = (bool) %in;
+                </conversion-rule>
+                <conversion-rule class="native">
+                    jboolean %out = (jboolean) %in;
+                </conversion-rule>
+            </modify-argument>
+        </modify-function>-->
+    </interface-type>
+
+  <object-type name="QIconEnginePluginV2"/>
+  <object-type name="QAccessiblePlugin"/>
+  <object-type name="QImageIOPlugin"/>
+  <object-type name="QInputContextPlugin"/>
+  <object-type name="QPictureFormatPlugin"/>
+  <object-type name="QStylePlugin"/>
+  <object-type name="QTextCodecPlugin"/>
+
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping function 'QPixmap::QPixmap', unmatched parameter type 'QPixmapData*'"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping * unmatched *type '*Private&amp;'"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping * unmatched *type '*Private\*'"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping * unmatched *type '*Private const\*'"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping * unmatched *type 'QTextEngine\*'"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping * unmatched *type 'QFontEngine\*'"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping * unmatched *type 'QPixmap::Type'"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping * unmatched *type 'QInputDialog::Type'"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping * unmatched *type 'QTextFrameLayoutData\*'"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping * unmatched *type 'QAbstractUndoItem\*'"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping * unmatched *type '*QImageTextKeyLang*'"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: non-public function '*' in interface '*'"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: visibility of function '*' modified in class '*'"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: hiding of function '*' in class '*'"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: unsupported default value 'QVector&lt;FormatRange&gt;()' of argument in function '*', class '*'"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: unsupported default value 'QVariantList()' of argument in function '*', class '*'"/>
+  <suppress-warning text="WARNING(CppImplGenerator) :: protected function '*' in final class '*'"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping function 'QTextLayout::QTextLayout', unmatched parameter type 'QTextEngine*'"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: unsupported default value of argument in function 'doAction', class 'QAccessibleInterface'"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping function 'QFileDialog::QFileDialog', unmatched parameter type 'QFileDialogArgs const&amp;'"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: unsupported default value '0., 0., 1000000000., 1000000000.' of argument in function 'update', class 'QAbstractTextDocumentLayout'"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping function 'QWidget::windowSurface', unmatched return type 'QWindowSurface*'"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping function 'QWidget::setWindowSurface', unmatched parameter type 'QWindowSurface*'"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: enum 'QStyleOption::StyleOptionType' does not have a type entry or is not an enum"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: unhandled enum value: ~FlagMask in QMessageBox::StandardButton"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: unmatched enum ~FlagMask"/>
+  <suppress-warning text="WARNING(MetaInfoGenerator) :: class 'QGraphicsSceneEvent' inherits from polymorphic class 'QEvent', but has no polymorphic id set"/>
+  <suppress-warning text="WARNING(MetaInfoGenerator) :: class 'QInputEvent' inherits from polymorphic class 'QEvent', but has no polymorphic id set"/>
+  <suppress-warning text="WARNING(JavaGenerator) :: either add or remove specified for reference count variable '__rcMenus' in 'qt.gui.QMenu' but not both"/>
+  <suppress-warning text="WARNING(JavaGenerator) :: either add or remove specified for reference count variable '__rcMenus' in 'qt.gui.QMenuBar' but not both"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QBrush' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QTextFrame_iterator' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QRegion' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QPolygon' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QTextTableCell' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QTextLength' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QPalette' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QTextBlock_iterator' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QTextBlock' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QTextCursor' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QFont' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QMatrix' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QPen' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QColor' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QTransform' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QPainterPath_Element' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QPainterPath' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QItemSelection' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QKeySequence' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QLine' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QPolygonF' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QSizePolicy' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QTextFragment' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QFontMetrics' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QGradient' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QFontMetricsF' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QTextFormat' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QLineF' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QImage' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QNetworkCookie' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QNetworkRequest' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: skipping function 'QPixmap::pixmapData', unmatched return type 'QPixmapData*'"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: object type 'QAccessible' extended by interface type 'QAbstractAccessibleFactory'. The resulting API will be less expressive than the original."/>
+
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Class 'QTextOption_Tab' has equals operators but no qHash() function"/>
+  <suppress-warning text="WARNING(MetaJavaBuilder) :: Rejected enum has no alternative...: QPalette::NColorRoles"/>
+
+</typesystem>