| class PIZZA_MAIN |
|---|
| GUI_UTIL |
| shared extras: TK_ENTRY; |
|---|
| **** | Area to enter extra requests. |
| shared price: TK_LABEL; |
|---|
| **** | Area to display the price. |
| shared size: TK_VAR; |
|---|
| **** | TK variable containing the size of the pizza. |
| shared toppingboxes: SET{TOPPING}; |
|---|
| **** | List of all toppings. |
| shared extras: TK_ENTRY; |
|---|
| **** | Area to enter extra requests. |
| shared price: TK_LABEL; |
|---|
| **** | Area to display the price. |
| shared size: TK_VAR; |
|---|
| **** | TK variable containing the size of the pizza. |
| shared toppingboxes: SET{TOPPING}; |
|---|
| **** | List of all toppings. |
| compute_price |
|---|
| **** | Will be called whenever something happens which changes the value of the pizza and computes the new price. |
| compute_price(e:TK_EVENT_INFO) |
|---|
| **** | A hook for 'compute_price' without argument. |
| gui_loop .. Included as gui_loop |
|---|
| **** | If you use this version (rather than intermittent poll_gui calls) it should be possible to create a single process version of your user interface with the same functionality by replacing this call with the Tk main loop |
| init |
|---|
| **** | The main program of this application. Sets up display. |
| main .. Included as main |
|---|
| packer: TK_PACK .. Included as packer |
|---|
| **** | Look at pack info for the standard configurations |
| quit_routine: ROUT .. Included as quit_routine |
|---|
| root_window: TK_TOPLEVEL .. Included as root_window |
|---|
| select_pizza(newpizza:INT) |
|---|
| **** | When a speical is selected, this function changes the topping buttons to match the recipe. |
| select_pizza(e:TK_EVENT_INFO) |
|---|
| **** | Routine being called when Mouse is pressed in the list of pizza specials. Looks whether there is a selection (there shouldn't be more than one -- as the list is a browse list) and selects the toppings of this pizza. |
| startup_gui .. Included as startup_gui |
|---|
| unselect_all |
|---|
| **** | Turns all topping buttons off. |
| init_toppings(toppings:SET{STR}) |
|---|
| **** | Puts the set of toppings vertically alphabetically (4 columns) into the toppingframe. |
| shared pizzalist: TK_LISTBOX; |
|---|
| **** | Listbox with specials. |
| shared pizzalist: TK_LISTBOX; |
|---|
| **** | Listbox with specials. |
| shared toppingframe: TK_FRAME; |
|---|
| **** | Master frame for list of toppings. |
| shared toppingframe: TK_FRAME; |
|---|
| **** | Master frame for list of toppings. |