class ButtonItem extends AbstractItem implements View.OnClickListener {

    protected Button createButton(ViewGroup parent) {
        if (mButton == null) {
            Context context = parent.getContext();
            if (mTheme != 0) {
                context = new ContextThemeWrapper(context, mTheme);
            }
            mButton = createButton(context);
            mButton.setOnClickListener(this);
        } else {
            if (mButton.getParent() instanceof ViewGroup) {
                // A view cannot be added to a different parent if one already exists. Remove this
                // button from its parent before returning.
                ((ViewGroup) mButton.getParent()).removeView(mButton);
            }
        }
        mButton.setEnabled(mEnabled);
        mButton.setText(mText);
        mButton.setId(getViewId());
        return mButton;
    }

    public  ButtonItem();
    public  ButtonItem(Context context, AttributeSet attrs);

}