|
Medical Imaging Interaction Toolkit
2025.08.00
Medical Imaging Interaction Toolkit
|
Base class for questions with options that may also have a free text option. More...
#include <mitkQuestionWithOtherOption.h>


Public Member Functions | |
| QuestionWithOtherOption () | |
| ~QuestionWithOtherOption () override | |
| std::vector< std::string > | GetResponsesAsStrings () const override |
| Return the question's response(s) as strings. More... | |
| void | ClearResponses () override |
| Clear the/all response(s). More... | |
| bool | IsComplete () const override |
| Check if a question is considered to be answered completely. More... | |
| bool | HasOtherOption () const |
| Query whether this question actually has an "Other" option. More... | |
| void | EnableOtherOption () |
| Switch on the "Other" option. More... | |
Public Member Functions inherited from mitk::Forms::QuestionWithOptions | |
| ~QuestionWithOptions () override | |
| size_t | AddOption (const std::string &option) |
| Add a non-exclusive option as possible answer to the question. More... | |
| std::vector< std::string > | GetOptions () const |
Public Member Functions inherited from mitk::Forms::Question | |
| Question () | |
| virtual | ~Question () |
| std::string | GetQuestionText () const |
| Get the literal question. More... | |
| void | SetQuestionText (const std::string &question) |
| Set the literal question. More... | |
| bool | IsRequired () const |
| Check whether a response to this question is required to complete a form. More... | |
| void | SetRequired (bool required=true) |
| Set whether a resonse to this question is required to complete a form. More... | |
| virtual std::string | GetRequiredText () const |
| Get the text that should be displayed to clearly mark a question as required. More... | |
| virtual bool | HasFileResponses () const |
| Query whether the responses given to this question are file paths. More... | |
| virtual std::vector< fs::path > | SubmitFileResponses (const fs::path &basePath) const |
| Attach response files to submission. More... | |
| virtual std::string | GetType () const =0 |
| Return the type of a question as string, e.g. "Multiple choice" or "Drop-down". More... | |
| virtual Question * | CreateAnother () const =0 |
| Create a new instance of the derived question class type. More... | |
| virtual void | FromJSON (const nlohmann::ordered_json &j)=0 |
| Deserialize from JSON. More... | |
| virtual void | ToJSON (nlohmann::ordered_json &j) const =0 |
| Serialize to JSON. More... | |
Protected Member Functions | |
| void | SetResponse (size_t i) override |
| Set one of the possible answer options as the single response. More... | |
| void | AddOtherResponse (const std::string &response) |
| Add the free text given as "Other" option to the list of responses. More... | |
| void | RemoveOtherResponse () |
| Remove the "Other" response from the list of already given responses. More... | |
| void | SetOtherResponse (const std::string &response) |
| Set the "Other" response as single exclusive response to this question. More... | |
Protected Member Functions inherited from mitk::Forms::QuestionWithOptions | |
| void | AddResponse (size_t i) |
| Add one of the possible answer options to the responses. More... | |
| void | RemoveResponse (size_t i) |
| Remove one of the already given responses. More... | |
Base class for questions with options that may also have a free text option.
This base class is an extension of QuestionWithOptions representing questions that may also have a free text option, typically labeled "Other" in forms/surveys.
Just like with QuestionWithOptions, depending on the exclusivity of the answer options, use using-declarations in derived classes to change the visibility of the respective protected member functions to public, i.e., SetOtherResponse() vs. AddOtherResponse() and RemoveOtherResponse().
Definition at line 31 of file mitkQuestionWithOtherOption.h.
| mitk::Forms::QuestionWithOtherOption::QuestionWithOtherOption | ( | ) |
|
override |
|
protected |
Add the free text given as "Other" option to the list of responses.
|
overridevirtual |
Clear the/all response(s).
Reimplemented from mitk::Forms::QuestionWithOptions.
| void mitk::Forms::QuestionWithOtherOption::EnableOtherOption | ( | ) |
Switch on the "Other" option.
By default, a question does not have an "Other" option.
|
overridevirtual |
Return the question's response(s) as strings.
This is the single common generic interface for retrieving responses from all types of questions. It is typically used to store responses in text-based formats like CSV.
It is implemented as vector since certain types of questions like a checkboxes question may support multiple responses. Otherwise, return a vector with a single element.
Reimplemented from mitk::Forms::QuestionWithOptions.
| bool mitk::Forms::QuestionWithOtherOption::HasOtherOption | ( | ) | const |
Query whether this question actually has an "Other" option.
|
overridevirtual |
Check if a question is considered to be answered completely.
This method is typically called when IsRequired() returns true to determine whether the requirements are fulfilled.
Reimplemented from mitk::Forms::QuestionWithOptions.
|
protected |
Remove the "Other" response from the list of already given responses.
|
protected |
Set the "Other" response as single exclusive response to this question.
|
overrideprotectedvirtual |
Set one of the possible answer options as the single response.
Reimplemented from mitk::Forms::QuestionWithOptions.