Software Customisation :Costomisation of the Graphical User Interface in Digital Image Processing System
Methodology
The user interface is hard to build. In this section the methodology of building the Graphical user interface (GUI) in Erdas imaging is discussed. To design and build a user interface, the following steps are generally excuted:
-
identify the needs of the users
- construct a scenario
- find a metaphor
- provide a design rationale
- design the system
- Build a protoype
- test and
- modify

Fig . 1. Methodology flowchart
Currently, not every system is allowed their users to customize the GUI of the system. The satellite GUI system can only be customized by the producers of the system itself. Every time where the system is added with some new utilities or have some modifications, the users have to change the whole system in order to increase the capability of the system.
The system that are provided with the customizing utilities are more efficient where the users are enable to customize them either by using a special programming language or by using special tools that available in software. In this project , software customization by using a programming language is used where the Erdas imagine system is chosen as working based software which it has a macro language called Erdas Macro Language (EML) which can be usec to coustomise the GUI of the system.
Erdas Macro Language
When the designing of ERDAS IMAGINE began, it was clear that a traditional, static Graphical User Interface (GUI) would not meet the needs of variety of users. Users wanted to be able to customize the interface and to create scripts which could be used to execute frequently used function.
The EML is a scripts language designed for generating a graphical user interface. EML allow us to design the same graphical user interface tools that are used in ERDAS IMAGINE. There are tow major features that EML can be used for :
- customize the imagine graphical user interface for our own use.
- incorporate C programmers ' Toolkit programmes into the imagine graphical user interface
EML was designed to be a distributed tools shared among co-operating applications. It is implemented as a library of functions which are built into application to give them a common functionality . the apparent feature EML is the creation of GUI from a script file Each EML application recognizes the EML script syntax and reads EML script files to creates its GUI, EML also provides interpr9ocess communications capabilities which serves to tie all RML applications together.
Programming in EML.
An EML script may consist of a mix procedural definitions and GUI definition. The procedural definitions are called procedure an may exist stand-alone in a script or they can be mixed within a script which defines a user interface. The GUI definitions are all contained in a component which is built of variables , menus and frames . the frames are built of frameparts such as button, meters, text areas, etc. . Features 2.1 shows the components of an EML script file.
Component
All GUI elements in an EML script are contained in a component. The component is simply a means of collecting one or more GUI objects in to a single named group. Components may contain one or more of the following elements: I) frame definitions; ii) Menu definitions ; iii) framepart attributes definations ;iv) Procedure

Figure 2.1. Elements of EML