text: //=========================================================================
  // Copyright (C) 2012 The Elastos Open Source Project
  //
  // Licensed under the Apache License, Version 2.0 (the "License");
  // you may not use this file except in compliance with the License.
  // You may obtain a copy of the License at
  //
  //      http://www.apache.org/licenses/LICENSE-2.0
  //
  // Unless required by applicable law or agreed to in writing, software
  // distributed under the License is distributed on an "AS IS" BASIS,
  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  // See the License for the specific language governing permissions and
  // limitations under the License.
  //=========================================================================
  
  #ifndef __ELASTOS_DROID_PREFERENCE_CHECKBOXPREFERENCE_H__
  #define __ELASTOS_DROID_PREFERENCE_CHECKBOXPREFERENCE_H__
  
  #include "elastos/droid/ext/frameworkext.h"
  #include "elastos/droid/preference/TwoStatePreference.h"
  
  using Elastos::Droid::Preference::IPreference;
  using Elastos::Droid::Preference::TwoStatePreference;
  
  namespace Elastos {
  namespace Droid {
  namespace Preference {
  
  /**
   * A {@link Preference} that provides checkbox widget
   * functionality.
   * <p>
   * This preference will store a boolean into the SharedPreferences.
   *
   * @attr ref android.R.styleable#CheckBoxPreference_summaryOff
   * @attr ref android.R.styleable#CheckBoxPreference_summaryOn
   * @attr ref android.R.styleable#CheckBoxPreference_disableDependentsState
   */
  class ECO_PUBLIC CheckBoxPreference
      : public TwoStatePreference
      , public ICheckBoxPreference
  {
  public:
      CAR_INTERFACE_DECL()
  
      CheckBoxPreference();
  
      CARAPI constructor(
          /* [in] */ IContext* context,
          /* [in] */ IAttributeSet* attrs,
          /* [in] */ Int32 defStyleAttr);
  
      CARAPI constructor(
          /* [in] */ IContext* context,
          /* [in] */ IAttributeSet* attrs,
          /* [in] */ Int32 defStyleAttr,
          /* [in] */ Int32 defStyleRes);
  
      CARAPI constructor(
          /* [in] */ IContext* context,
          /* [in] */ IAttributeSet* attrs);
  
      CARAPI constructor(
          /* [in] */ IContext* context);
  
      //@Override
      CARAPI OnBindView(
          /* [in]  */ IView* view);
  };
  
  }
  }
  }
  
  #endif // __ELASTOS_DROID_PREFERENCE_CHECKBOXPREFERENCE_H__
  