1. A computer-implemented method of providing a user with a state-based guided tour of an application, comprising: selecting the guided tour; displaying a set of steps in the guided tour; emphasizing a current action step from the set of steps to preselect the current action step; executing the preselected current action step to follow the guided tour; determining a state of the application to determine a next step from the set of steps to display; and wherein if the state of the application changes: displaying a subsequent step from the set of steps, becoming a new current step; displaying a descriptive text associated with the new current step; displaying a step previous to the new current step; displaying a step following the new current step; and emphasizing a new current action area in the application.