Hi,

as mentioned in an earlier mail, i've created a binding for the qt solutions
property browser
(http://doc.trolltech.com/solutions/4/qtpropertybrowser/index.html).
Everything is available under
http://qt.gitorious.org/qt-jambi/qtpropertybrowser-binding. But some
problems do exist: methods like

QtBrowserItem QtAbstractPropertyBrowser.currentItem();
QtProperty QtBrowserItem.property();

always create new Java Objects instead of returning existing ones. I tried
to move the ownership to c++ (using in the typesystem.xml), but this had no
effect. Maybe i did not modify all required methods...

Maybe someone has created a c++ binding on his own, has experiences with
this behaviour and could look into my typesystem.xml (see attached file).

 

Please help me to finalize this binding.

br, klemensl
-- 
Mit freundlichen Gruessen,

Klemens Loschy
KeepLiquid Consulting
_________________________________________
SEQIS GmbH - The Austrian Software Test Experts!
Marktplatz 3, 2380 Perchtoldsdorf, Austria

cel +43 664 TESTS 06
cel +43 664 83787 06
fax +43 1 867 54 63-50

web http://www.SEQIS.com, http://www.KeepLiquid.com


*Frank Bieser, CIO, HEROLD Business Data GmbH*, über SEQIS:
'Die Zusammenarbeit mit SEQIS in unseren Projekten ist von einem Hoechstmass
an Professionalitaet und Zielorientierung gepraegt. Zahlreiche gemeinsame
Vorhaben wurden partnerschaftlich und hoch erfolgreich abgewickelt. Auch
fuer die Zukunft sehen wir in SEQIS einen unserer verlaesslichsten Partner.'

________________________________
http://www.seqis.com/disclaimer


--
SEQIS Spam & Virus Agent: Message ok

<typesystem package="com.trolltech.solutions.qtpropertybrowser" default-superclass="com.trolltech.qt.QtJambiObject">
    <load-typesystem name=":/trolltech/generator/typesystem_core.txt" generate="no"/>
    <load-typesystem name=":/trolltech/generator/typesystem_gui.txt" generate="no"/>
    <load-typesystem name=":/trolltech/generator/typesystem_sql.txt" generate="no"/>
    <load-typesystem name=":/trolltech/generator/typesystem_opengl.txt" generate="no"/>
    <load-typesystem name=":/trolltech/generator/typesystem_svg.txt" generate="no"/>
    <load-typesystem name=":/trolltech/generator/typesystem_network.txt" generate="no"/>
    <load-typesystem name=":/trolltech/generator/typesystem_xml.txt" generate="no"/>
    <load-typesystem name=":/trolltech/generator/typesystem_xmlpatterns.txt" generate="no"/>
    <load-typesystem name=":/trolltech/generator/typesystem_webkit.txt" generate="no"/>
    <load-typesystem name=":/trolltech/generator/typesystem_phonon.txt" generate="no"/>
    
    //<template name="from_nativepointer_to_value_type"> public final %RETURN_TYPE% %FUNCTION_NAME%() { return %RETURN_TYPE%.fromNativePointer(%ORIGINAL_FUNCTION_NAME%()); } </template>
    
    <enum-type name="QtTreePropertyBrowser::ResizeMode"/>
    
    <object-type name="QtAbstractPropertyBrowser" polymorphic-base="yes">
   	 <modify-function signature="properties()const" rename="browserProperties"/>
   	 <modify-function signature="addProperty(QtProperty *)">
	        <modify-argument index="return">
	             <define-ownership class="java" owner="c++" />
	        </modify-argument>
   	 </modify-function>
    </object-type>
    <object-type name="QtTreePropertyBrowser"/>
    <object-type name="QtButtonPropertyBrowser"/>
    <object-type name="QtGroupBoxPropertyBrowser"/>
    
    
    <object-type name="QtAbstractPropertyManager" polymorphic-base="yes">
   	 <modify-function signature="properties()const" rename="browserProperties"/>
   	 <modify-function signature="addProperty(const QString)">
	 	<modify-argument index="return">
	     		<define-ownership class="java" owner="c++" />
	    	</modify-argument>
   	 </modify-function>
    </object-type>
    <object-type name="QtIntPropertyManager"/>
    <object-type name="QtDoublePropertyManager"/>
    <object-type name="QtBoolPropertyManager"/>
    <object-type name="QtStringPropertyManager"/>
    <object-type name="QtDatePropertyManager"/>
    <object-type name="QtDateTimePropertyManager"/>
    <object-type name="QtTimePropertyManager"/>
    <object-type name="QtEnumPropertyManager"/>
    <object-type name="QtVariantPropertyManager">
       	 <modify-function signature="addProperty(int, const QString)">
    	        <modify-argument index="return">
    	             <define-ownership class="java" owner="c++" />
    	        </modify-argument>
   	 </modify-function>
    </object-type>
    <object-type name="QtColorPropertyManager"/>
    <object-type name="QtFlagPropertyManager"/>
    <object-type name="QtFontPropertyManager"/>
    <object-type name="QtGroupPropertyManager"/>
    
    
    <object-type name="QtAbstractEditorFactoryBase" polymorphic-base="yes">
        <modify-function signature="breakConnection(QtAbstractPropertyManager*)" remove="all"/>
        <modify-function signature="QtAbstractEditorFactoryBase(QObject*)" remove="all"/>
    </object-type>
    <object-type name="QtCheckBoxFactory" default-superclass="com.trolltech.solutions.qtpropertybrowser.QtAbstractEditorFactoryBase"/>
    <object-type name="QtSpinBoxFactory" default-superclass="com.trolltech.solutions.qtpropertybrowser.QtAbstractEditorFactoryBase"/>
    <object-type name="QtDoubleSpinBoxFactory" default-superclass="com.trolltech.solutions.qtpropertybrowser.QtAbstractEditorFactoryBase"/>
    <object-type name="QtScrollBarFactory" default-superclass="com.trolltech.solutions.qtpropertybrowser.QtAbstractEditorFactoryBase"/>
    <object-type name="QtSliderFactory" default-superclass="com.trolltech.solutions.qtpropertybrowser.QtAbstractEditorFactoryBase"/>
    <object-type name="QtLineEditFactory" default-superclass="com.trolltech.solutions.qtpropertybrowser.QtAbstractEditorFactoryBase"/>
    <object-type name="QtDateEditFactory" default-superclass="com.trolltech.solutions.qtpropertybrowser.QtAbstractEditorFactoryBase"/>
    <object-type name="QtDateTimeEditFactory" default-superclass="com.trolltech.solutions.qtpropertybrowser.QtAbstractEditorFactoryBase"/>
    <object-type name="QtTimeEditFactory" default-superclass="com.trolltech.solutions.qtpropertybrowser.QtAbstractEditorFactoryBase"/>
    <object-type name="QtEnumEditorFactory" default-superclass="com.trolltech.solutions.qtpropertybrowser.QtAbstractEditorFactoryBase"/>
    <object-type name="QtVariantEditorFactory" default-superclass="com.trolltech.solutions.qtpropertybrowser.QtAbstractEditorFactoryBase"/>
    <object-type name="QtColorEditorFactory" default-superclass="com.trolltech.solutions.qtpropertybrowser.QtAbstractEditorFactoryBase"/>
    <object-type name="QtFontEditorFactory" default-superclass="com.trolltech.solutions.qtpropertybrowser.QtAbstractEditorFactoryBase"/>
    
    <object-type name="QtBrowserItem"/>
    <object-type name="QtProperty"/>
    <object-type name="QtVariantProperty"/>
</typesystem>
_______________________________________________
Qt-jambi-interest mailing list
Qt-jambi-interest@trolltech.com
http://lists.trolltech.com/mailman/listinfo/qt-jambi-interest

Reply via email to