<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.slicer.org/w/index.php?action=history&amp;feed=atom&amp;title=Documentation%2FLabs%2FPythonObserverCallbacks</id>
	<title>Documentation/Labs/PythonObserverCallbacks - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://www.slicer.org/w/index.php?action=history&amp;feed=atom&amp;title=Documentation%2FLabs%2FPythonObserverCallbacks"/>
	<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Labs/PythonObserverCallbacks&amp;action=history"/>
	<updated>2026-05-04T06:44:33Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.33.0</generator>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Labs/PythonObserverCallbacks&amp;diff=40576&amp;oldid=prev</id>
		<title>Lasso: Created page with 'Currently the syntax for defining observer callback functions with CallData argument is too comples, see [[Documentation/Nightly/Developers/FAQ/Python_Scripting#How_can_I_access_…'</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Labs/PythonObserverCallbacks&amp;diff=40576&amp;oldid=prev"/>
		<updated>2014-12-28T20:43:12Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;#039;Currently the syntax for defining observer callback functions with CallData argument is too comples, see [[Documentation/Nightly/Developers/FAQ/Python_Scripting#How_can_I_access_…&amp;#039;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Currently the syntax for defining observer callback functions with CallData argument is too comples, see [[Documentation/Nightly/Developers/FAQ/Python_Scripting#How_can_I_access_callData_argument_in_a_VTK_object_observer_callback_function]]&lt;br /&gt;
&lt;br /&gt;
The remaining limitation is that mix-ins can only be used in helper classes (such as [https://github.com/Slicer/Slicer/blob/1c10718f30b8f15a5f6c0602e96add70c1898df6/Modules/Scripted/EditorLib/EditBox.py#L2 here]) but not in scripted loadable module classes.&lt;br /&gt;
&lt;br /&gt;
We need to fix:&lt;br /&gt;
* the base class so that it derives from 'object' and be a [https://docs.python.org/2/reference/datamodel.html#newstyle &amp;quot;new style&amp;quot; python class]  and &lt;br /&gt;
* the c++ proxy class so that we can understand new style classes. See [https://github.com/Slicer/Slicer/blob/master/Base/QTGUI/qSlicerScriptedLoadableModuleWidget.cxx qSlicerScriptedLoadableModuleWidget.cxx] and [http://stackoverflow.com/questions/18757186/pyinstance-newraw-with-old-and-new-style-classes pyinstance-newraw-with-old-and-new-style-classes]&lt;/div&gt;</summary>
		<author><name>Lasso</name></author>
		
	</entry>
</feed>