the structure of the application it is important to visualize this as the majority of wxpython interfaces are built up in this wayusing containers and sizers the inheritance structure between the classes used in the pydraw application is illustrated below this class hierarchy is typical of an application which incorporates user interface features with graphical elements modelview and controller architecture the application adopts the well established model-view-controller (or mvcdesign pattern for separating out the responsibilities between the view element ( the frame or panel)the control element (for handling user inputand the model element (which holds the data to be displayedthis separation of concerns is not new idea and allows the construction of gui applications that mirror the model-view-controller architecture the intention of the mvc architecture is the separation of the user displayfrom the control of user inputfrom the underlying information model as illustrated below