blob: b68e50e35951e97a0eb40f101fdaf400f75bddac [file] [log] [blame]
package com.xtremelabs.robolectric.shadows;
import android.content.Context;
import android.content.Intent;
import android.preference.Preference;
import android.util.AttributeSet;
import com.xtremelabs.robolectric.internal.Implementation;
import com.xtremelabs.robolectric.internal.Implements;
import com.xtremelabs.robolectric.internal.RealObject;
@Implements(Preference.class)
public class ShadowPreference {
@RealObject private Preference realPreference;
protected Context context;
protected AttributeSet attrs;
protected int defStyle;
protected String key;
protected CharSequence title;
protected CharSequence summary;
protected Object defaultValue;
protected int order;
protected boolean enabled = true;
protected String dependencyKey;
protected boolean persistent = false;
protected int persistedInt;
protected Object callChangeListenerValue = null;
protected Preference.OnPreferenceClickListener onClickListener;
private Intent intent;
public void __constructor__(Context context) {
__constructor__(context, null, 0);
}
public void __constructor__(Context context, AttributeSet attributeSet) {
__constructor__(context, attributeSet, 0);
}
public void __constructor__(Context context, AttributeSet attributeSet, int defStyle) {
this.context = context;
this.attrs = attributeSet;
this.defStyle = defStyle;
if (attributeSet != null) {
key = attributeSet.getAttributeValue("android", "key");
}
}
@Implementation
public Context getContext() {
return context;
}
public AttributeSet getAttrs() {
return attrs;
}
public int getDefStyle() {
return defStyle;
}
@Implementation
public void setEnabled(boolean enabled) {
this.enabled = enabled;
}
@Implementation
public boolean isEnabled() {
return enabled;
}
@Implementation
public boolean shouldPersist() {
return persistent;
}
@Implementation
public boolean isPersistent() {
return persistent;
}
@Implementation
public void setPersistent(boolean persistent) {
this.persistent = persistent;
}
@Implementation
public int getPersistedInt(int defaultReturnValue) {
return persistent ? persistedInt : defaultReturnValue;
}
@Implementation
public boolean persistInt(int value) {
this.persistedInt = value;
return persistent;
}
@Implementation
public boolean callChangeListener(Object newValue) {
callChangeListenerValue = newValue;
return true;
}
public Object getCallChangeListenerValue() {
return callChangeListenerValue;
}
@Implementation
public void setSummary(int summaryResId) {
this.summary = context.getResources().getText(summaryResId);
}
@Implementation
public void setSummary(CharSequence summary) {
this.summary = summary;
}
@Implementation
public CharSequence getSummary() {
return summary;
}
@Implementation
public void setTitle(int titleResId) {
this.title = context.getResources().getText(titleResId);
}
@Implementation
public void setTitle(CharSequence title) {
this.title = title;
}
@Implementation
public CharSequence getTitle() {
return title;
}
@Implementation
public void setKey(String key) {
this.key = key;
}
@Implementation
public String getKey() {
return key;
}
@Implementation
public void setDefaultValue(Object defaultValue) {
this.defaultValue = defaultValue;
}
public Object getDefaultValue() {
return defaultValue;
}
@Implementation
public int getOrder() {
return order;
}
@Implementation
public void setOrder(int order) {
this.order = order;
}
@Implementation
public void setOnPreferenceClickListener( Preference.OnPreferenceClickListener onPreferenceClickListener ) {
this.onClickListener = onPreferenceClickListener;
}
@Implementation
public Preference.OnPreferenceClickListener getOnPreferenceClickListener() {
return onClickListener;
}
public boolean click() {
return onClickListener.onPreferenceClick(realPreference);
}
@Implementation
public void setIntent(Intent i) {
this.intent = i;
}
@Implementation
public Intent getIntent() {
return this.intent;
}
@Implementation
public void setDependency(String dependencyKey) {
this.dependencyKey = dependencyKey;
}
@Implementation
public String getDependency() {
return this.dependencyKey;
}
}