Multiple layout loading

Hi,
in my application I’m using different layouts stored in filesystem. I’m using one CControl with several registered MultipleCDockableFactories, I’m using also my MultipleCDockableLayout.

I have a problem which I can’t get on. Scenario is: load layout A, do anything, then load layout A again.
When I load layout A for the first time, readXML method of my implementation of MultipleCDockableLayout is called (ok). Also method read of my implementation MultipleCDockableFactory is called (ok).
When I load layout A for the second time, readXML method of my implementation of MultipleCDockableLayout is called (ok), but method read of my implementation MultipleCDockableFactory is not called (not ok).

I have a logic for dealing with created dockables in MultipleCDockableFactory.read method, but this approach works only when I load the layout for the first time.

I tried to look to code to see the background, and maybe once the layout is loaded, factory methods are not invoked anymore.

My question is, am I doing something wrong? Can I somehow tell framework it should forget once loaded layout and load it normally as for the first time? Should I move logic from MultipleCDockableFactory.read to somewhere else?

Thanks
Tomas

Did you override the “match” method of your MultipleCDockableFactory? Because if it returns “true” the framework assumes that a layout is already loaded and no further action has to be taken. It then reuses an existing Dockable instead of creating a new one.

I overpassed this, thank you very much. It works now!
Tomas