Master's Thesis - Computer Graphics and Visualization - TU Delft
Master's Thesis - Computer Graphics and Visualization - TU Delft
Master's Thesis - Computer Graphics and Visualization - TU Delft
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
3.5.2 Various widgets to display a module’s parameters<br />
In the design of the Culgi GPE, we use different types of widgets to display different parameters in a<br />
module. The purpose is to reduce the user’s errors. This design is explained in three aspects.<br />
.<br />
1) Using different widgets for different parameter types.<br />
The widget type used for a parameter is determined by the data type of this parameter. There are three<br />
advantages. First, the widget type of a parameter could hint the users what kind of value is expected in<br />
this parameter. So the users’ underst<strong>and</strong>ing could be increased. Second, each widget type can have its<br />
own bound checking function. When users make errors when typing, the system will warn the users by<br />
showing the background in different color (pink in this prototype) or by some sound. This could reduce<br />
some errors such as the value is out of range or the value is not of the expected type. Third, some<br />
widget type itself can reduce typos. For example, the widget combobox generally used in single<br />
selection is used when the data type of the parameter is “enum”. So the users can choose one valid<br />
selection by clicking instead of typing in.<br />
2) Use selection other than typing in some cases<br />
One feature of the Culgi comm<strong>and</strong>s is that some comm<strong>and</strong>s take the same arguments, as pointed out as<br />
one feature of the Culgi library in Chapter 2. So it is possible that the value of a parameter in a module<br />
refers to the value of a parameter in another module. It will be h<strong>and</strong>y if users can select the value of this<br />
parameter instead of typing in (because the value has been defined in another module). Selection can<br />
not only reduce typing errors, but also hint the users that what should the value be in this parameter.<br />
Figure 3-5 shows two types of selection. As shown in Figure 3-5 (a), the value of parameter<br />
DPDMolecules in module AddDPDMoleculesViewable, determines which molecules will be shown on<br />
the screen. It needs the values from Parameter Name of CreateDPDMolecules. Users can choose one,<br />
both or none of these two types of molecules to be visible. So the system just supplies checkbox for<br />
multi selection widget. But Figure 3-5 (b) is a different case. It is a single selection Case. That is to say,<br />
users can <strong>and</strong> only can select one. So the system just supplies a widget for single selection.<br />
3) keep consistent automatically<br />
Suppose, in the case of Figure 3-5 a user selected box1 first. Then the user changed the value ‘box1’<br />
into another value like ‘box3’ in module ‘Box’. If the user forget to change the corresponding value in<br />
Module CreateDPDMolecules, an error would happened when the program starts running.<br />
Thus the system should keep the name consistent automatically. That is to say, the system will make<br />
sure that if the definition is changed, the reference will also be changed. This mechanism is hidden for<br />
users.<br />
- 23 -