Click here to Skip to main content
15,884,628 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
I'm developing an image viewer MFC MDI (with one CView and CDocument)application for displaying a number of images files(stored in PC) in single application window for comparison . The number(upto 4) of images to be showed and its order will change dynamically with user preference. So I created a custom dynamic splitter window class derived from CSplitterWnd to split the screen to four panes and placed the four image files opened using CDocument::OnOpenDocument function. Now I want to rearrange the images displaying in splitter panes (with user preferences) on running time. For example sometimes the user may want to interchange image display in splitter pane(0,0) to pane(1, 1) vice versa. How can I manage it in programmatically to keep the data of the opened files in document view architecture?
Is CDocument or CView objects of the opened image file have to be stored for this? How it possible?
I also need to close selected panes on running time and have to store the images displayed in it for later use(may be to display in another pane).
Also I need to change the splitter pane design configuration dynamically on running


-------- ------
|%%% | %%%|
-------|-------
|%%% | %%%|
---------------

three panes (top pane splitted into two),


-------- ------
|%%% | %%%|
|--------------|
|%%%%%%%|
---------------


-------- ------
|%%% | %%% |
| ------| %%% |
| %%%|%%% |
----------------



I saw few examples in online forums which explaining nested splitters, but they are using a static splitter as primary splitter(). Also they only provide option for deleting a splitter column or row entirely, not have methods for deleting a pane only which is needed for my application.
Can I create a nested splitter configuration only using dynamic splitters in MFC?
Can anyone suggest a work around for solving this issue?
Posted
Updated 19-May-14 20:56pm
v3

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900