Some considerations on GUI design

This section contains some general considerations on which GUI elements to use where. If this is your first attempt of creating a plugin, feel free to skip over this section, as it is not relevant to getting a basic GUI working. Come back here, later, to see, whether you can refine your plugin's GUI in some way or another.

<radio> vs. <checkbox> vs. <dropdown>

The three elements <radio>, <checkbox>, <dropdown>, all serve a similar function: To select one out of several options. Obviously, a check box only allows to choose between two options: checked or not checked, so you cannot use it, if there are more than two options to choose from. But when to use which of the elements? Some rules of thumb:

If you find yourself creating a <radio> or <dropdown> with only two options, ask yourself, whether the question is essentially a yes / no type of question. E.g. a choice between adjust results and do not adjust results, or between remove missing values and keep missing values. In this case a <checkbox> is the best choice: It uses little space, will have the least words of labels, and is easiest to read for the user. There are very few situations where you should choose a <radio> over a <checkbox>, when there are only two options. An example of that might be: Method of calculation: 'pearson'/'spearman'. Here, more methods might be thinkable, and they do not really form a pair of opposites.

Choosing between a <radio> and a <dropdown> is mostly a question of space. The <dropdown> has the advantage of using little space, even if there are a lot of options to choose from. On the other hand, a <radio> has the advantage of making all possible choices visible to the user at once, without clicking on the dropdown arrow. Generally, if there are six or more options to choose from, a <dropdown> is preferable. If there are five or less options, a <radio> is the better choice.