class PIZZA_MAIN


Flattened version is here

Ancestors
GUI_UTIL



Public


Readonly Shareds
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.

Writable Shareds
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.

Features
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.
init
**** The main program of this application. Sets up display.
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.
unselect_all
**** Turns all topping buttons off.


Private

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.

The Sather Home Page