148090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh/* 248090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh * Copyright (C) 2010 The Android Open Source Project 348090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh * 448090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh * Licensed under the Apache License, Version 2.0 (the "License"); 548090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh * you may not use this file except in compliance with the License. 648090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh * You may obtain a copy of the License at 748090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh * 848090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh * http://www.apache.org/licenses/LICENSE-2.0 948090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh * 1048090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh * Unless required by applicable law or agreed to in writing, software 1148090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh * distributed under the License is distributed on an "AS IS" BASIS, 1248090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1348090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh * See the License for the specific language governing permissions and 1448090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh * limitations under the License. 1548090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh */ 1648090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh 1748090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yehpackage com.android.settings.wifi; 1848090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh 195cd60eb8aa5a4d5cf1a850ddd05d4f94eae1eb2fDaisuke Miyakawaimport com.android.settings.R; 205cd60eb8aa5a4d5cf1a850ddd05d4f94eae1eb2fDaisuke Miyakawa 2148090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yehimport android.app.AlertDialog; 2248090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yehimport android.content.Context; 2348090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yehimport android.content.DialogInterface; 2448090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yehimport android.os.Bundle; 2548090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yehimport android.view.View; 26d36699282cbd0a6897f425106081d3f2c0db55d4Daisuke Miyakawaimport android.widget.Button; 2748090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh 28d36699282cbd0a6897f425106081d3f2c0db55d4Daisuke Miyakawaclass WifiDialog extends AlertDialog implements WifiConfigUiBase { 2948090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh static final int BUTTON_SUBMIT = DialogInterface.BUTTON_POSITIVE; 3048090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh static final int BUTTON_FORGET = DialogInterface.BUTTON_NEUTRAL; 3148090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh 32d36699282cbd0a6897f425106081d3f2c0db55d4Daisuke Miyakawa private final boolean mEdit; 3348090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh private final DialogInterface.OnClickListener mListener; 3448090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh private final AccessPoint mAccessPoint; 3548090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh 3648090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh private View mView; 37d36699282cbd0a6897f425106081d3f2c0db55d4Daisuke Miyakawa private WifiConfigController mController; 3848090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh 39d36699282cbd0a6897f425106081d3f2c0db55d4Daisuke Miyakawa public WifiDialog(Context context, DialogInterface.OnClickListener listener, 4048090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh AccessPoint accessPoint, boolean edit) { 4125b69ebcccec93798d1ebf6c77707bd79036be44Amith Yamasani super(context, R.style.Theme_WifiDialog); 42d36699282cbd0a6897f425106081d3f2c0db55d4Daisuke Miyakawa mEdit = edit; 4348090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh mListener = listener; 4448090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh mAccessPoint = accessPoint; 4548090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh } 4648090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh 47d36699282cbd0a6897f425106081d3f2c0db55d4Daisuke Miyakawa @Override 48d36699282cbd0a6897f425106081d3f2c0db55d4Daisuke Miyakawa public WifiConfigController getController() { 49d36699282cbd0a6897f425106081d3f2c0db55d4Daisuke Miyakawa return mController; 5048090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh } 5148090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh 5248090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh @Override 5348090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh protected void onCreate(Bundle savedInstanceState) { 5448090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh mView = getLayoutInflater().inflate(R.layout.wifi_dialog, null); 5548090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh setView(mView); 5648090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh setInverseBackgroundForced(true); 5758b0291fe6e6e47bf3d7457d8cf2648b8ce4a1aeDaisuke Miyakawa mController = new WifiConfigController(this, mView, mAccessPoint, mEdit); 5848090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh super.onCreate(savedInstanceState); 590c0bd827a104ee3a5891b8c5f1dae6db422e09e9Irfan Sheriff /* During creation, the submit button can be unavailable to determine 600c0bd827a104ee3a5891b8c5f1dae6db422e09e9Irfan Sheriff * visibility. Right after creation, update button visibility */ 610c0bd827a104ee3a5891b8c5f1dae6db422e09e9Irfan Sheriff mController.enableSubmitIfAppropriate(); 6248090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh } 6348090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh 64d36699282cbd0a6897f425106081d3f2c0db55d4Daisuke Miyakawa @Override 65d36699282cbd0a6897f425106081d3f2c0db55d4Daisuke Miyakawa public boolean isEdit() { 66d36699282cbd0a6897f425106081d3f2c0db55d4Daisuke Miyakawa return mEdit; 6748090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh } 6848090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh 69d36699282cbd0a6897f425106081d3f2c0db55d4Daisuke Miyakawa @Override 70d36699282cbd0a6897f425106081d3f2c0db55d4Daisuke Miyakawa public Button getSubmitButton() { 71d36699282cbd0a6897f425106081d3f2c0db55d4Daisuke Miyakawa return getButton(BUTTON_SUBMIT); 7248090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh } 7348090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh 74d36699282cbd0a6897f425106081d3f2c0db55d4Daisuke Miyakawa @Override 75d36699282cbd0a6897f425106081d3f2c0db55d4Daisuke Miyakawa public Button getForgetButton() { 76d36699282cbd0a6897f425106081d3f2c0db55d4Daisuke Miyakawa return getButton(BUTTON_FORGET); 7748090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh } 7848090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh 79d36699282cbd0a6897f425106081d3f2c0db55d4Daisuke Miyakawa @Override 80d36699282cbd0a6897f425106081d3f2c0db55d4Daisuke Miyakawa public Button getCancelButton() { 81d36699282cbd0a6897f425106081d3f2c0db55d4Daisuke Miyakawa return getButton(BUTTON_NEGATIVE); 8248090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh } 8348090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh 84d36699282cbd0a6897f425106081d3f2c0db55d4Daisuke Miyakawa @Override 85d36699282cbd0a6897f425106081d3f2c0db55d4Daisuke Miyakawa public void setSubmitButton(CharSequence text) { 86d36699282cbd0a6897f425106081d3f2c0db55d4Daisuke Miyakawa setButton(BUTTON_SUBMIT, text, mListener); 8748090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh } 8848090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh 89d36699282cbd0a6897f425106081d3f2c0db55d4Daisuke Miyakawa @Override 90d36699282cbd0a6897f425106081d3f2c0db55d4Daisuke Miyakawa public void setForgetButton(CharSequence text) { 91d36699282cbd0a6897f425106081d3f2c0db55d4Daisuke Miyakawa setButton(BUTTON_FORGET, text, mListener); 9248090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh } 9348090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh 94d36699282cbd0a6897f425106081d3f2c0db55d4Daisuke Miyakawa @Override 95d36699282cbd0a6897f425106081d3f2c0db55d4Daisuke Miyakawa public void setCancelButton(CharSequence text) { 96d36699282cbd0a6897f425106081d3f2c0db55d4Daisuke Miyakawa setButton(BUTTON_NEGATIVE, text, mListener); 9748090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh } 9848090d4066fdf3084a4fb31277e785149c1bce37Chia-chi Yeh} 99