package view_inspector.ui.menu; import android.animation.ObjectAnimator; import android.content.Context; import android.widget.CompoundButton; import android.widget.LinearLayout; import android.widget.Switch; import com.f2prateek.rx.preferences.Preference; import javax.inject.Inject; import view_inspector.R; import view_inspector.ViewInspector; import view_inspector.dagger.qualifier.Scalpel3D; import view_inspector.dagger.qualifier.ScalpelShowId; import view_inspector.dagger.qualifier.ScalpelWireframe; public class LayerMenu extends BaseMenu { private final LinearLayout mSubmenuLayout; @Inject @Scalpel3D Preference<Boolean> scalpel3d; @Inject @ScalpelWireframe Preference<Boolean> scalpelWireframe; @Inject @ScalpelShowId Preference<Boolean> scalpelId; @SuppressWarnings("ConstantConditions") public LayerMenu(Context context) { super(context); ViewInspector.runtimeComponentMap.get(context).inject(this); inflate(context, R.layout.view_inspector_layer_menu, this); mSubmenuLayout = (LinearLayout) findViewById(R.id.submenu); if (scalpel3d.get()) { showSubMenu(); } Switch scalpel3dSwitch = (Switch) findViewById(R.id.scalpel_3d_switch); scalpel3dSwitch.setChecked(scalpel3d.get()); scalpel3dSwitch.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { scalpel3d.set(isChecked); if (isChecked) { showSubMenu(); } else { mSubmenuLayout.setVisibility(GONE); } } }); Switch scalpelWireframeSwitch = (Switch) findViewById(R.id.scalpel_wireframe_switch); scalpelWireframeSwitch.setChecked(scalpelWireframe.get()); scalpelWireframeSwitch.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { scalpelWireframe.set(isChecked); } }); Switch scalpelIdSwitch = (Switch) findViewById(R.id.scalpel_id_switch); scalpelIdSwitch.setChecked(scalpelId.get()); scalpelIdSwitch.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { scalpelId.set(isChecked); } }); } private void showSubMenu() { mSubmenuLayout.setVisibility(VISIBLE); ObjectAnimator animator = ObjectAnimator.ofFloat(mSubmenuLayout, "alpha", 0f, 1f); animator.setDuration(200).start(); } }