11.1 Design overview

An application consists of the two fundamental pieces:

The kernel code consists of Python modules that contain functions and classes for performing various tasks; for example, creating parts or postprocessing results. The GUI code provides a convenient, user-friendly mechanism for gathering the inputs required for the kernel code. Kernel coding is described in the ABAQUS Scripting User's Manual and the ABAQUS Scripting Command Reference Manual.

To develop the GUI code, you begin with a startup script that launches the application from the command line. The script creates an application object, which interacts with the window manager and controls a main window. The main window provides components such as a menu bar, a toolbar, and a toolbox. From that core you add functionality to the application by registering modules and toolsets.

Modules and toolsets are a way of grouping functionality to be presented to the user. For example, the Part module in ABAQUS/CAE groups all the functions related to creating and modifying parts. ABAQUS/CAE modules and toolsets can be included in your application, and you can write your own modules and toolsets to provide custom functionality.

The widget library provides access to various GUI controls (such as push buttons, check buttons, and text fields) that are used to build dialog boxes. These concepts are illustrated in Figure 11–1. Each of these steps is described in detail in subsequent sections.

Figure 11–1 An overview of GUI code.