The subform from the template "rwfHistoryDisplay" can be customized to display approval history. The engine make use of 3 multivalue fields to record document history. They are "rwfHistoryStatus", "rwfHistoryUser" and "rwfHistoryTime", computed for display fields that make use of these fields can be used to display the document history in various ways.
By default , approval history shows a state only the first time the document is in that state. Thus if you have a document that goes into "state1" at two different times, only the first time will be shown. This feature can be overridden by writing an agent that is simiilar to the processContextDocument method of the WorkflowDocument class but makes a call to the setHistory method of the approver class with the boolean parameter false eg. Approver.setHistory(Sring, false, DateTime), see the Javadocs for mor information.