package com.lechucksoftware.proxy.proxysettings.excluded;
import android.content.Context;
import android.util.AttributeSet;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.Button;
import android.widget.LinearLayout;
import com.lechucksoftware.proxy.proxysettings.R;
/**
* Created by marco on 12/09/13.
*/
public class StatusView extends LinearLayout
{
private Button statusButton;
public StatusView(Context context, AttributeSet attrs)
{
super(context, attrs);
LayoutInflater inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View v = null;
statusButton = null;
if(inflater != null)
{
v = inflater.inflate(R.layout.status, this);
statusButton = (Button) v.findViewById(R.id.status_button);
}
}
public void setStatus(StatusFragmentStates status, String message, View.OnClickListener listener, Boolean isInProgress)
{
// if (status == clickedStatus)
// {
// return;
// }
switch (status)
{
case CONNECTED:
setStatusInternal(message, listener, R.drawable.btn_blue_holo_dark,true);
break;
case CHECKING:
setStatusInternal(message, listener, R.drawable.btn_blue_holo_dark,false);
break;
case CONNECT_TO:
setStatusInternal(message, listener, R.drawable.btn_green_holo_dark,true);
break;
case NOT_AVAILABLE:
setStatusInternal(message, listener, R.drawable.btn_blue_holo_dark,false);
break;
case ENABLE_WIFI:
setStatusInternal(message, listener, R.drawable.btn_red_holo_dark,true);
break;
case GOTO_AVAILABLE_WIFI:
setStatusInternal(message, listener, R.drawable.btn_green_holo_dark,true);
break;
case NONE:
// default:
// hide();
}
}
private void setStatusInternal(String status, View.OnClickListener listener, int resId, boolean enabled)
{
// clickedStatus = null;
if (listener != null)
statusButton.setText(String.format("%s...", status));
else
statusButton.setText(status);
statusButton.setBackgroundResource(resId);
statusButton.setEnabled(enabled);
statusButton.setOnClickListener(listener);
// show();
}
}