I'm developing a desktop application which has some similar UIs. So, I decided to extract out the common behaviors like below.
Here is my Class diagram for the application.
Since I have another 4 similar UIs containing same components (form, search, table), I have used Abstract class to get/set panels (formPanel, searchPanel and TablePanel) to each module (According to this diagram:
Patient panel |---form panel |---search panel |---table panel Prescription panel |---form panel |---search panel |---table panel Drug panel |---form panel |---search panel |---table panel
MainWindowPanel is used to add all panels to the main window.
Am I using the proper way to implement those user interfaces?