package com.lechucksoftware.proxy.proxysettings.ui.components;
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.App;
import com.lechucksoftware.proxy.proxysettings.R;
import com.lechucksoftware.proxy.proxysettings.utils.UIUtils;
import be.shouldit.proxy.lib.APL;
import be.shouldit.proxy.lib.utils.ProxyUtils;
import timber.log.Timber;
/**
* Created by Marco on 15/06/14.
*/
public class ActionsView extends LinearLayout
{
private Button configureWifiActionBtn;
private Button enableWifiActionBtn;
// private Button airplaneModeActionBtn;
public ActionsView(Context context, AttributeSet attrs)
{
super(context, attrs);
readStyleParameters(context,attrs);
LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View v = inflater.inflate(R.layout.actions_view, this);
if (v != null)
{
getUIComponents(v);
refreshUI();
}
}
protected void readStyleParameters(Context context, AttributeSet attributeSet)
{
// TypedArray a = context.obtainStyledAttributes(attributeSet, R.styleable.InputField);
try
{
// title = a.getString(R.styleable.InputField_title);
}
finally
{
// a.recycle();
}
}
private void getUIComponents(View v)
{
// airplaneModeActionBtn = (Button) v.findViewById(R.id.airplane_mode_action_btn);
// airplaneModeActionBtn.setOnClickListener(airplaneModeClickListener);
enableWifiActionBtn = (Button) v.findViewById(R.id.enable_wifi_action_btn);
enableWifiActionBtn.setOnClickListener(enableWifiClickListener);
configureWifiActionBtn = (Button) v.findViewById(R.id.configure_wifi_ap);
configureWifiActionBtn.setOnClickListener(configureNewWifiAp);
}
View.OnClickListener airplaneModeClickListener = new View.OnClickListener()
{
@Override
public void onClick(View view)
{
try
{
}
catch (Exception e)
{
Timber.e(e,"Exception during ActionsView airplaneModeClickListener action");
}
view.setVisibility(GONE);
refreshUI();
}
};
View.OnClickListener enableWifiClickListener = new View.OnClickListener()
{
@Override
public void onClick(View view)
{
try
{
APL.enableWifi();
}
catch (Exception e)
{
Timber.e(e,"Exception during ActionsView enableWifiClickListener action");
}
view.setVisibility(GONE);
refreshUI();
}
};
View.OnClickListener configureNewWifiAp = new View.OnClickListener()
{
@Override
public void onClick(View view)
{
ProxyUtils.startAndroidWifiSettings(getContext());
view.setVisibility(GONE);
refreshUI();
}
};
// public void airplaneModeAction(boolean b)
// {
// airplaneModeActionBtn.setVisibility(UIUtils.booleanToVisibility(b));
// }
public void wifiOnOffEnable(boolean b)
{
enableWifiActionBtn.setVisibility(UIUtils.booleanToVisibility(b));
refreshUI();
}
public void wifiConfigureEnable(boolean b)
{
configureWifiActionBtn.setVisibility(UIUtils.booleanToVisibility(b));
refreshUI();
}
private void refreshUI()
{
if (
enableWifiActionBtn.getVisibility() == GONE &&
configureWifiActionBtn.getVisibility() == GONE)
{
this.setVisibility(GONE);
}
else
{
this.setVisibility(VISIBLE);
}
}
}