The application will have four windows and at a time it has to display one or two windows on a single monitor (5"x5") machine or dual monitor (5"x5") machine respectively. The application has two modes of operations; User Mode and Maintenance Mode. In user mode no user inputs through mouse or key board is required; however, application senses some inputs through some ways. Whereas, the other one is interactive in nature. In user mode application has to display either one window or two depending upon the no of displays available; if there is two displays available, it has to do its processing and display DIFFERENT sets of messages & small images on two displays. In maintenance mode either one or two windows have to be shown depending upon the no of displays available; if there is two displays available, it has to take some user inputs through keyboard or mouse and after doing little processing, it has to display SAME images and messages on two displays. Regarding processing requirement the application uses few TCP/IP sockets for message exchanges, communicates with few serial devices through serial ports and interacting with light weight database. The application won't have any menus; only on small displays it has to show some messages and small images; messages and images have to be updated very frequently.
My question is which category of MFC application (Dialog Based, SDI or MDI) is suitable for my application.
As of now the application is Dialog based application with one Modal Dialog and three Modeless dialogs. Depending upon the no of displays it creates either one Modal dialog & another modeless dialog (for single display) and at any moment it displays one dialog and keeps other dialog hidden and in case of dual displays it creates one Modal dialog and another three modeless dialog; however at a time it displays only two dialogs. PostMessage is being used for message exchange among the dialogs.
Any suggestion on this may help me a lot.