1a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultzpackage com.xtremelabs.robolectric.shadows; 2a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz 3a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz 4a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultzimport android.graphics.drawable.ColorDrawable; 5a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultzimport com.xtremelabs.robolectric.internal.Implementation; 6a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultzimport com.xtremelabs.robolectric.internal.Implements; 7a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz 8a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultzimport static com.xtremelabs.robolectric.Robolectric.shadowOf; 9a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz 10a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz@Implements(ColorDrawable.class) 11a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultzpublic class ShadowColorDrawable extends ShadowDrawable { 12a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz 13a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz int colorResourceId; 14a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz 15a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz public void __constructor__(int color) { 16a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz colorResourceId = color; 17a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz } 18a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz 19a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz @Override @Implementation 20a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz public boolean equals(Object o) { 21a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz if (realObject == o) return true; 22a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz if (o == null || realObject.getClass() != o.getClass()) return false; 23a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz 24a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz if (!super.equals(o)) return false; 25a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz 26a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz ShadowColorDrawable that = shadowOf((ColorDrawable)o); 27a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz 28a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz if (colorResourceId != that.colorResourceId) return false; 29a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz 30a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz return true; 31a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz } 32a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz 33a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz @Override @Implementation 34a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz public int hashCode() { 35a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz int result = super.hashCode(); 36a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz result = 31 * result + colorResourceId; 37a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz return result; 38a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz } 39a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz} 40