Search in sources :

Example 1 with ImageRadioButtonOption

use of org.eyeseetea.malariacare.views.option.ImageRadioButtonOption in project pictureapp by EyeSeeTea.

the class DynamicTabAdapter method initializeNavigationButtons.

private void initializeNavigationButtons(View navigationButtonsHolder) {
    ImageButton button = (ImageButton) navigationButtonsHolder.findViewById(R.id.next_btn);
    ((LinearLayout) button.getParent()).setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            if (isClicked) {
                Log.d(TAG, "onClick ignored to avoid double click");
                return;
            }
            Log.d(TAG, "onClicked");
            isClicked = true;
            boolean questionsWithError = false;
            for (IMultiQuestionView multiquestionView : mMultiQuestionViews) {
                if (multiquestionView.hasError()) {
                    questionsWithError = true;
                    break;
                }
            }
            Log.d(TAG, "Questions with failed validation " + failedValidations);
            if (failedValidations == 0 && !questionsWithError) {
                TableRow currentRow = (TableRow) tableLayout.getChildAt(0);
                if (!readOnly && currentRow != null && currentRow.getChildAt(0) instanceof ImageRadioButtonSingleQuestionView) {
                    navigationController.isMovingToForward = true;
                    ImageRadioButtonSingleQuestionView imageRadioButtonSingleQuestionView = (ImageRadioButtonSingleQuestionView) currentRow.getChildAt(0);
                    ImageRadioButtonOption selectedOptionView = imageRadioButtonSingleQuestionView.getSelectedOptionView();
                    if (selectedOptionView != null) {
                        final Question question = navigationController.getCurrentQuestion();
                        Option selectedOption = selectedOptionView.getOption();
                        Question counterQuestion = question.findCounterByOption(selectedOption);
                        if ((mReviewMode && isCounterValueEqualToMax(question, selectedOption))) {
                            saveOptionValue(selectedOptionView, selectedOptionView.getOption(), question, true);
                        } else if (counterQuestion != null) {
                            showConfirmCounter(selectedOptionView, selectedOptionView.getOption(), question, counterQuestion);
                        } else {
                            finishOrNext();
                        }
                    } else {
                        isClicked = false;
                    }
                } else {
                    finishOrNext();
                }
            } else if (navigationController.getCurrentQuestion().hasCompulsoryNotAnswered() || Tab.isDynamicTreatmentTab(navigationController.getCurrentTab().getType())) {
                UIMessagesStrategy.getInstance().showCompulsoryUnansweredToast();
                isClicked = false;
                return;
            } else {
                isClicked = false;
            }
        }
    });
    button = (ImageButton) navigationButtonsHolder.findViewById(R.id.back_btn);
    //Save the numberpicker value in the DB, and continue to the next screen.
    ((LinearLayout) button.getParent()).setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            previous();
        }
    });
}
Also used : ImageRadioButtonOption(org.eyeseetea.malariacare.views.option.ImageRadioButtonOption) ImageButton(android.widget.ImageButton) TableRow(android.widget.TableRow) IMultiQuestionView(org.eyeseetea.malariacare.views.question.IMultiQuestionView) Question(org.eyeseetea.malariacare.data.database.model.Question) QuestionOption(org.eyeseetea.malariacare.data.database.model.QuestionOption) ImageRadioButtonOption(org.eyeseetea.malariacare.views.option.ImageRadioButtonOption) Option(org.eyeseetea.malariacare.data.database.model.Option) AKeyboardQuestionView(org.eyeseetea.malariacare.views.question.AKeyboardQuestionView) ImageView(android.widget.ImageView) AOptionQuestionView(org.eyeseetea.malariacare.views.question.AOptionQuestionView) View(android.view.View) INavigationQuestionView(org.eyeseetea.malariacare.views.question.INavigationQuestionView) IQuestionView(org.eyeseetea.malariacare.views.question.IQuestionView) ImageRadioButtonSingleQuestionView(org.eyeseetea.malariacare.views.question.singlequestion.ImageRadioButtonSingleQuestionView) CustomTextView(org.eyeseetea.sdk.presentation.views.CustomTextView) ListView(android.widget.ListView) IMultiQuestionView(org.eyeseetea.malariacare.views.question.IMultiQuestionView) DynamicStockImageRadioButtonSingleQuestionView(org.eyeseetea.malariacare.views.question.singlequestion.DynamicStockImageRadioButtonSingleQuestionView) IImageQuestionView(org.eyeseetea.malariacare.views.question.IImageQuestionView) NumberRadioButtonMultiquestionView(org.eyeseetea.malariacare.views.question.multiquestion.NumberRadioButtonMultiquestionView) ScrollView(android.widget.ScrollView) LinearLayout(android.widget.LinearLayout) ImageRadioButtonSingleQuestionView(org.eyeseetea.malariacare.views.question.singlequestion.ImageRadioButtonSingleQuestionView) DynamicStockImageRadioButtonSingleQuestionView(org.eyeseetea.malariacare.views.question.singlequestion.DynamicStockImageRadioButtonSingleQuestionView)

Example 2 with ImageRadioButtonOption

use of org.eyeseetea.malariacare.views.option.ImageRadioButtonOption in project pictureapp by EyeSeeTea.

the class ImageRadioButtonSingleQuestionView method setOptions.

@Override
public void setOptions(List<Option> options) {
    for (Option option : options) {
        ImageRadioButtonOption imageRadioButtonOption = createOptionView(option);
        answersContainer.addView(imageRadioButtonOption);
    }
}
Also used : ImageRadioButtonOption(org.eyeseetea.malariacare.views.option.ImageRadioButtonOption) Option(org.eyeseetea.malariacare.data.database.model.Option) ImageRadioButtonOption(org.eyeseetea.malariacare.views.option.ImageRadioButtonOption)

Example 3 with ImageRadioButtonOption

use of org.eyeseetea.malariacare.views.option.ImageRadioButtonOption in project pictureapp by EyeSeeTea.

the class DynamicStockImageRadioButtonSingleQuestionView method setOptions.

public void setOptions(List<Option> options) {
    for (Option option : options) {
        ImageRadioButtonOption imageRadioButtonOption = createOptionView(option);
        answersContainer.addView(imageRadioButtonOption);
    }
}
Also used : ImageRadioButtonOption(org.eyeseetea.malariacare.views.option.ImageRadioButtonOption) Option(org.eyeseetea.malariacare.data.database.model.Option) ImageRadioButtonOption(org.eyeseetea.malariacare.views.option.ImageRadioButtonOption)

Example 4 with ImageRadioButtonOption

use of org.eyeseetea.malariacare.views.option.ImageRadioButtonOption in project pictureapp by EyeSeeTea.

the class DynamicStockImageRadioButtonSingleQuestionView method setValue.

@Override
public void setValue(Value value) {
    if (value == null || value.getValue() == null) {
        return;
    }
    for (int i = 0; i < answersContainer.getChildCount(); i++) {
        ImageRadioButtonOption imageRadioButtonOption = (ImageRadioButtonOption) answersContainer.getChildAt(i);
        Question question = (Question) imageRadioButtonOption.getTag();
        if (!question.isOutStockQuestion() && question.getId_question().equals(value.getQuestion().getId_question()) && Float.parseFloat(value.getValue()) > 0) {
            imageRadioButtonOption.setChecked(true);
        } else if (question.getId_question().equals(value.getQuestion().getId_question())) {
            List<Option> options = question.getAnswer().getOptions();
            for (Option option : options) {
                if ((option.getCode().equals(PreferencesState.getInstance().getContext().getString(R.string.true_option_id))) && option.getId_option().equals(value.getId_option())) {
                    imageRadioButtonOption.setChecked(true);
                }
            }
        }
    }
}
Also used : ImageRadioButtonOption(org.eyeseetea.malariacare.views.option.ImageRadioButtonOption) Question(org.eyeseetea.malariacare.data.database.model.Question) List(java.util.List) Option(org.eyeseetea.malariacare.data.database.model.Option) ImageRadioButtonOption(org.eyeseetea.malariacare.views.option.ImageRadioButtonOption)

Example 5 with ImageRadioButtonOption

use of org.eyeseetea.malariacare.views.option.ImageRadioButtonOption in project pictureapp by EyeSeeTea.

the class DynamicStockImageRadioButtonSingleQuestionView method createOptionView.

@NonNull
private ImageRadioButtonOption createOptionView(Option option) {
    ImageRadioButtonOption imageRadioButtonOption = new ImageRadioButtonOption(getContext(), true);
    imageRadioButtonOption.setText(option.getInternationalizedCode());
    putImageInImageRadioButton(option.getInternationalizedPath(), imageRadioButtonOption);
    imageRadioButtonOption.setOnCheckedChangeListener(this);
    imageRadioButtonOption.setOption(option, mQuestion);
    imageRadioButtonOption.setEnabled(super.isEnabled());
    imageRadioButtonOption.setTag(Question.findByID(option.getId_option()));
    return imageRadioButtonOption;
}
Also used : ImageRadioButtonOption(org.eyeseetea.malariacare.views.option.ImageRadioButtonOption) NonNull(android.support.annotation.NonNull)

Aggregations

ImageRadioButtonOption (org.eyeseetea.malariacare.views.option.ImageRadioButtonOption)8 Option (org.eyeseetea.malariacare.data.database.model.Option)5 Question (org.eyeseetea.malariacare.data.database.model.Question)3 NonNull (android.support.annotation.NonNull)2 View (android.view.View)2 AKeyboardQuestionView (org.eyeseetea.malariacare.views.question.AKeyboardQuestionView)2 AOptionQuestionView (org.eyeseetea.malariacare.views.question.AOptionQuestionView)2 IQuestionView (org.eyeseetea.malariacare.views.question.IQuestionView)2 ImageButton (android.widget.ImageButton)1 ImageView (android.widget.ImageView)1 LinearLayout (android.widget.LinearLayout)1 ListView (android.widget.ListView)1 ScrollView (android.widget.ScrollView)1 TableRow (android.widget.TableRow)1 List (java.util.List)1 QuestionOption (org.eyeseetea.malariacare.data.database.model.QuestionOption)1 Value (org.eyeseetea.malariacare.data.database.model.Value)1 IImageQuestionView (org.eyeseetea.malariacare.views.question.IImageQuestionView)1 IMultiQuestionView (org.eyeseetea.malariacare.views.question.IMultiQuestionView)1 INavigationQuestionView (org.eyeseetea.malariacare.views.question.INavigationQuestionView)1