Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  package com.WazaBe.HoloEverywhere.preference;
  
  import java.util.List;
  
  import android.os.Handler;
  import android.view.View;
 
 
 class PreferenceGroupAdapter extends BaseAdapter implements
 	private static class PreferenceLayout implements
 		private String name;
 		private int resId;
 		private int widgetResId;
 
 		public int compareTo(PreferenceLayout other) {
 			int compareNames = .compareTo(other.name);
 			if (compareNames == 0) {
 				if ( == other.resId) {
 					if ( == other.widgetResId) {
 						return 0;
 					} else {
 						return  - other.widgetResId;
 					}
 				} else {
 					return  - other.resId;
 				}
 			} else {
 				return compareNames;
 			}
 		}
 	}
 
 	private Handler mHandler = new Handler();
 	private boolean mHasReturnedViewTypeCount = false;
 	private volatile boolean mIsSyncing = false;
 	private Runnable mSyncRunnable = new Runnable() {
 		public void run() {
 		}
 	};
 
 
 	public PreferenceGroupAdapter(PreferenceGroup preferenceGroup) {
 		 = preferenceGroup;
 	}
 
 	private void addPreferenceClassName(Preference preference) {
 		final PreferenceLayout pl = createPreferenceLayout(preferencenull);
 		int insertPos = Collections.binarySearch(pl);
 		if (insertPos < 0) {
 			insertPos = insertPos * -1 - 1;
 			.add(insertPospl);
 		}
 	}
 
 	public boolean areAllItemsEnabled() {
 		return false;
 	}
 
 		PreferenceLayout pl = in != null ? in : new PreferenceLayout();
 		pl.name = preference.getClass().getName();
 		pl.resId = preference.getLayoutResource();
 		pl.widgetResId = preference.getWidgetLayoutResource();
 		return pl;
 	}
 
 	private void flattenPreferenceGroup(List<Preferencepreferences,
 			PreferenceGroup group) {
 		group.sortPreferences();
 
 		final int groupSize = group.getPreferenceCount();
 		for (int i = 0; i < groupSizei++) {
 			final Preference preference = group.getPreference(i);
 
 			preferences.add(preference);
 
 			if (! && !preference.hasSpecifiedLayout()) {
 				addPreferenceClassName(preference);
			}
			if (preference instanceof PreferenceGroup) {
				final PreferenceGroup preferenceAsGroup = (PreferenceGrouppreference;
				if (preferenceAsGroup.isOnSameScreenAsChildren()) {
					flattenPreferenceGroup(preferencespreferenceAsGroup);
				}
			}
		}
	}
	public int getCount() {
	}
	public Preference getItem(int position) {
		if (position < 0 || position >= getCount()) {
			return null;
		}
		return .get(position);
	}
	public long getItemId(int position) {
		if (position < 0 || position >= getCount()) {
		}
		return getItem(position).getId();
	}
	public int getItemViewType(int position) {
		}
		final Preference preference = getItem(position);
		if (preference.hasSpecifiedLayout()) {
		}
		int viewType = Collections.binarySearch(,
		if (viewType < 0) {
else {
			return viewType;
		}
	}
	public View getView(int positionView convertViewViewGroup parent) {
		final Preference preference = getItem(position);
			convertView = null;
		}
		return preference.getView(convertViewparent);
	}
	public int getViewTypeCount() {
		}
		return Math.max(1, .size());
	}
	public boolean hasStableIds() {
		return true;
	}
	public boolean isEnabled(int position) {
		if (position < 0 || position >= getCount()) {
			return true;
		}
		return getItem(position).isSelectable();
	}
	public void onPreferenceChange(Preference preference) {
	}
	public void onPreferenceHierarchyChange(Preference preference) {
	}
	private void syncMyPreferences() {
		synchronized (this) {
			if () {
				return;
			}
			 = true;
		}
		List<PreferencenewPreferenceList = new ArrayList<Preference>(
		 = newPreferenceList;
		synchronized (this) {
			 = false;
		}
	}
New to GrepCode? Check out our FAQ X