13c1e67e433728684b5f228c5d4f3e5b1457bb271sm/* 23c1e67e433728684b5f228c5d4f3e5b1457bb271sm * Copyright (C) 2010 The Android Open Source Project 33c1e67e433728684b5f228c5d4f3e5b1457bb271sm * 43c1e67e433728684b5f228c5d4f3e5b1457bb271sm * Licensed under the Apache License, Version 2.0 (the "License"); 53c1e67e433728684b5f228c5d4f3e5b1457bb271sm * you may not use this file except in compliance with the License. 63c1e67e433728684b5f228c5d4f3e5b1457bb271sm * You may obtain a copy of the License at 73c1e67e433728684b5f228c5d4f3e5b1457bb271sm * 83c1e67e433728684b5f228c5d4f3e5b1457bb271sm * http://www.apache.org/licenses/LICENSE-2.0 93c1e67e433728684b5f228c5d4f3e5b1457bb271sm * 103c1e67e433728684b5f228c5d4f3e5b1457bb271sm * Unless required by applicable law or agreed to in writing, software 113c1e67e433728684b5f228c5d4f3e5b1457bb271sm * distributed under the License is distributed on an "AS IS" BASIS, 123c1e67e433728684b5f228c5d4f3e5b1457bb271sm * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 133c1e67e433728684b5f228c5d4f3e5b1457bb271sm * See the License for the specific language governing permissions and 143c1e67e433728684b5f228c5d4f3e5b1457bb271sm * limitations under the License. 153c1e67e433728684b5f228c5d4f3e5b1457bb271sm */ 163c1e67e433728684b5f228c5d4f3e5b1457bb271sm 17cfd74d65d832137e20e193c960802afba73b5d38smpackage com.replica.replicaisland; 18cfd74d65d832137e20e193c960802afba73b5d38sm 19cfd74d65d832137e20e193c960802afba73b5d38smimport android.content.Context; 20cfd74d65d832137e20e193c960802afba73b5d38smimport android.preference.DialogPreference; 21cfd74d65d832137e20e193c960802afba73b5d38smimport android.util.AttributeSet; 22cfd74d65d832137e20e193c960802afba73b5d38sm 23cfd74d65d832137e20e193c960802afba73b5d38smpublic class YesNoDialogPreference extends DialogPreference { 24cfd74d65d832137e20e193c960802afba73b5d38sm private YesNoDialogListener mListener; 25cfd74d65d832137e20e193c960802afba73b5d38sm 26cfd74d65d832137e20e193c960802afba73b5d38sm public abstract interface YesNoDialogListener { 27cfd74d65d832137e20e193c960802afba73b5d38sm public abstract void onDialogClosed(boolean positiveResult); 28cfd74d65d832137e20e193c960802afba73b5d38sm } 29cfd74d65d832137e20e193c960802afba73b5d38sm 30cfd74d65d832137e20e193c960802afba73b5d38sm public YesNoDialogPreference(Context context, AttributeSet attrs) { 31cfd74d65d832137e20e193c960802afba73b5d38sm this(context, attrs, android.R.attr.yesNoPreferenceStyle); 32cfd74d65d832137e20e193c960802afba73b5d38sm // TODO Auto-generated constructor stub 33cfd74d65d832137e20e193c960802afba73b5d38sm } 34cfd74d65d832137e20e193c960802afba73b5d38sm 35cfd74d65d832137e20e193c960802afba73b5d38sm public YesNoDialogPreference(Context context, AttributeSet attrs, 36cfd74d65d832137e20e193c960802afba73b5d38sm int defStyle) { 37cfd74d65d832137e20e193c960802afba73b5d38sm super(context, attrs, defStyle); 38cfd74d65d832137e20e193c960802afba73b5d38sm // TODO Auto-generated constructor stub 39cfd74d65d832137e20e193c960802afba73b5d38sm } 40cfd74d65d832137e20e193c960802afba73b5d38sm 41cfd74d65d832137e20e193c960802afba73b5d38sm public YesNoDialogPreference(Context context) { 42cfd74d65d832137e20e193c960802afba73b5d38sm this(context, null); 43cfd74d65d832137e20e193c960802afba73b5d38sm } 44cfd74d65d832137e20e193c960802afba73b5d38sm 45cfd74d65d832137e20e193c960802afba73b5d38sm public void setListener(YesNoDialogListener listener) { 46cfd74d65d832137e20e193c960802afba73b5d38sm mListener = listener; 47cfd74d65d832137e20e193c960802afba73b5d38sm } 48cfd74d65d832137e20e193c960802afba73b5d38sm 49cfd74d65d832137e20e193c960802afba73b5d38sm @Override 50cfd74d65d832137e20e193c960802afba73b5d38sm protected void onDialogClosed(boolean positiveResult) { 51cfd74d65d832137e20e193c960802afba73b5d38sm if (mListener != null) { 52cfd74d65d832137e20e193c960802afba73b5d38sm mListener.onDialogClosed(positiveResult); 53cfd74d65d832137e20e193c960802afba73b5d38sm } 54cfd74d65d832137e20e193c960802afba73b5d38sm } 55cfd74d65d832137e20e193c960802afba73b5d38sm} 56