1

I am currently working on a project, a simulator, written in C++ MFC. In our simulator we have a components editor that runs in a child dialog of the simulator. This child dialog uses docking panes to organize information.

The only problem is, we can't get the docking panes of this child dialog to save their position on close/re-open. Is it possible? I know it is done by default if you start a new project using the Visual Studio style, but can it also be done for a child dialog that is not the main application?

class HDVehicleEditor_MainFrame : public CFrameWndEx
    {
    // Class declarations here 
    }
TraderG
  • 13
  • 4

1 Answers1

1

Persistence of the dock panels is implemented, I believe, by CDockingManager class, which is associated with the main frame window. In your dialog, who is responsible for this? Did you write your own CDockingManager? Then you would need to implement CDockingManager::LoadState()/CDockingManager::SaveState() yourself.

Vlad Feinstein
  • 10,960
  • 1
  • 12
  • 27
  • I am picking this up as a new assignment, still trying to read through the files to get a good sense. It is my understanding, that at one point we tried to implement the save/load of the docking state, however, the notes on the case at the time, stated saving and loading of the docking states was only available on the main dialog (the main application) and that child dialogs created at run time, did not have that option. We are defining our own main frame. To answer your question, we are not writing our own docking manager. – TraderG Jan 11 '16 at 21:33