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