/** * Cause the question to be renderered. This gets the appropriate behaviour * renderer using {@link get_renderer()}, and adjusts the display * options using {@link adjust_display_options()} and then calls * {@link core_question_renderer::question()} to do the work. * @param question_display_options $options controls what should and should not be displayed. * @param unknown_type $number the question number to display. * @param core_question_renderer $qoutput the question renderer that will coordinate everything. * @param qtype_renderer $qtoutput the question type renderer that will be helping. * @return HTML fragment. */ public function render(question_display_options $options, $number, core_question_renderer $qoutput, qtype_renderer $qtoutput) { $behaviouroutput = $this->get_renderer($qoutput->get_page()); $options = clone($options); $this->adjust_display_options($options); return $qoutput->question($this->qa, $behaviouroutput, $qtoutput, $options, $number); }