Clean up
[unical.git] / src / ro / ieval / unical / TrivialFragment.java
index 0932a4a727843e26076b2e45f5bf62a6d1467cb2..23086ab0a43d3e45680f072dd885c8115c0d282e 100644 (file)
@@ -5,30 +5,71 @@ import android.os.Bundle;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
+import android.widget.AdapterView;
 import android.widget.CompoundButton;
+import android.widget.LinearLayout;
 import android.widget.Spinner;
 import android.widget.Switch;
-import android.widget.CompoundButton.OnCheckedChangeListener;
 
 public final class TrivialFragment extends Fragment {
+       private static class OnItemSelectedListener implements android.widget.AdapterView.OnItemSelectedListener{
+               final View repeatCount;
+               public OnItemSelectedListener(final View repeatCount) {
+                       this.repeatCount=repeatCount;
+               }
+
+               @Override
+               public void onItemSelected(final AdapterView<?> whatever, final View ignored, final int pos, final long id) {
+                       switch(pos){
+                       case 0:
+                               repeatCount.setVisibility(View.GONE);
+                               break;
+                       case 1:
+                               repeatCount.setVisibility(View.GONE);
+                               break;
+                       case 2:
+                               repeatCount.setVisibility(View.VISIBLE);
+                               break;
+                       default:
+                       }
+               }
+
+               @Override public void onNothingSelected(final AdapterView<?> arg0) { /* do nothing */   }
+       }
+
+       private static class OnCheckedChangeListener implements android.widget.CompoundButton.OnCheckedChangeListener{
+               private final LinearLayout layout;
+               private final View root;
+               public OnCheckedChangeListener(final LinearLayout layout, final View root){
+                       this.layout=layout;
+                       this.root=root;
+               }
+
+               @Override
+               public void onCheckedChanged(final CompoundButton buttonView, final boolean isChecked) {
+                       if(isChecked) {
+                               Utils.setEnabledRecursively(layout, true);
+                               final Spinner repeatType = (Spinner) root.findViewById(R.id.repeat_type);
+                               repeatType.setOnItemSelectedListener(new OnItemSelectedListener(root.findViewById(R.id.repeat_count)));
+                       }else {
+                               Utils.setEnabledRecursively(layout, false);
+                       }
+               }
+       }
+
        public static final String ARGUMENT_LAYOUT="layout";
 
        @Override
     public View onCreateView(final LayoutInflater inflater, final ViewGroup container, final Bundle savedInstanceState) {
+               
                final View view=inflater.inflate(getArguments().getInt(ARGUMENT_LAYOUT), container, false);
-               final Switch repeatSwitch = (Switch) view.findViewById(R.id.repeat_switch);
-               if(repeatSwitch != null){
-                       final Spinner repeatSpinner = (Spinner) view.findViewById(R.id.repeat_spinner);
-                       repeatSwitch.setOnCheckedChangeListener(new OnCheckedChangeListener() {
-                               @Override
-                               public void onCheckedChanged(final CompoundButton buttonView, final boolean isChecked) {
-                                       if(isChecked) {
-                                               repeatSpinner.setEnabled(true);
-                                       }else {
-                                               repeatSpinner.setEnabled(false);
-                                       }
-                               }
-                       });
+               final LinearLayout layout = (LinearLayout) view.findViewById(R.id.repeat_layout);
+               
+               if(layout != null){
+                       final Switch repeatSwitch = (Switch) view.findViewById(R.id.repeat_switch);
+                       Utils.setEnabledRecursively(layout, false);
+                       
+                       repeatSwitch.setOnCheckedChangeListener(new OnCheckedChangeListener(layout, view));
                }
                return view;
        }
This page took 0.010209 seconds and 4 git commands to generate.