Here's one way of doing it:

vtkSMProxyManager* pxm = vtkSMObject::GetProxyManager();
vtkSMProxy *tempProxy = pxm->NewProxy(
  src->GetXMLGroup(),
  src->GetXMLName());
tempProxy->Copy(src);

....
src->Copy(tempProxy);

Utkarsh

Nehme Bilal wrote:

tempProxy is just a proxy I created using:
vtkSMProxy tempProxy = vtkSMProxy::New();

I am trying to save/restore all the object properties displayed in the object inspector.

On Wed, 19 Nov 2008 09:30:55 -0500
 Utkarsh Ayachit <[EMAIL PROTECTED]> wrote:
Nehme,

What properties are you changing/trying to restore? Is "tempProxy" of the same type as "src"?

Utkarsh

Nehme Bilal wrote:
Hello,

Sorry I missed a few commas in the last message. this is the correct one:

I am looking for a way to save a proxy properties and restore it later.
The only way I found is by saving and restoring the state using:
virtual vtkPVXMLElement* SaveState(vtkPVXMLElement* root);
virtual int LoadState(vtkPVXMLElement* element, vtkSMStateLoaderBase* loader);

I don't want to use LoadState because this method create a new proxy. I just want to restore all properties to the existing proxy. There is also a method called Copy (void Copy(vtkSMProxy* src), this method will copy all src properties to another proxy:

//copying properties to tempProxy
tempProxy->Copy(src,0,vtkSMProxy::COPY_PROXY_PROPERTY_VALUES_BY_CLONING);

I tried to change some display properties in Paraview and then restore using: src->Copy(tempProxy,0,vtkSMProxy::COPY_PROXY_PROPERTY_VALUES_BY_CLONING);
src->UpdateVTKObjects();

but nothing is restored ! why? Is there any other way to do that?
(suppose that I have only on source)

Thank you


_______________________________________________
ParaView mailing list
[email protected]
http://www.paraview.org/mailman/listinfo/paraview



_______________________________________________
ParaView mailing list
[email protected]
http://www.paraview.org/mailman/listinfo/paraview

Reply via email to