package org.emdev.ui.actions; import android.app.Dialog; import android.view.View; import android.widget.TextView; /** * This class defines base features for action controller. * * @param <ManagedComponent> * manager GUI component class */ public class DialogController<ManagedComponent extends Dialog> extends AbstractComponentController<ManagedComponent> { /** * Constructor * * @param dialog * managed dialog */ public DialogController(final ManagedComponent dialog) { this(null, dialog); } /** * Constructor. * * @param parent * the parent controller * @param managedComponent * managed component */ public DialogController(final IActionController<?> parent, final ManagedComponent managedComponent) { super(parent, managedComponent); } public ActionEx connectViewToAction(final int viewId) { ActionEx action = getOrCreateAction(viewId); View view = getManagedComponent().findViewById(viewId); if (view != null) { view.setOnClickListener(action); } return action; } public ActionEx connectViewToAction(final View view) { ActionEx action = getOrCreateAction(view.getId()); view.setOnClickListener(action); return action; } public ActionEx connectViewToAction(final View view, final int onClickActionId) { ActionEx action = getOrCreateAction(onClickActionId); view.setOnClickListener(action); return action; } public ActionEx connectEditorToAction(final TextView view, final int onEditActionId) { ActionEx action = getOrCreateAction(onEditActionId); view.setOnEditorActionListener(action); return action; } public void connectViewToActions(final int viewId, final int onClickActionId, final int onLongClickActionId) { ActionEx action1 = getOrCreateAction(onClickActionId); ActionEx action2 = getOrCreateAction(onLongClickActionId); View view = getManagedComponent().findViewById(viewId); if (view != null) { view.setOnClickListener(action1); view.setOnLongClickListener(action2); } } public void connectViewToActions(final View view, final int onClickActionId, final int onLongClickActionId) { ActionEx action1 = getOrCreateAction(onClickActionId); ActionEx action2 = getOrCreateAction(onLongClickActionId); view.setOnClickListener(action1); view.setOnLongClickListener(action2); } }