using System;
using Shared.Common;
namespace Shared.Phone.Device.CommonForm
{
public class SelectDeviceWithSeekBarRow : FrameLayout
{
///
/// ClickButton
///
public Button ClickButton;
///
/// name
///
public Button NameBtn;
///
/// SelectBtn
///
public Button SelectBtn;
///
/// v_Selected
///
private bool v_Selected;
///
/// line
///
private Button line;
///
/// SeekBar
///
public HorizontalSeekBar SeekBar;
///
/// SeekBarTitle
///
public Button SeekBarTitle;
///
/// MaxLevel
///
public int MaxLevel;
///
/// IsSelected
///
public bool IsSelected
{
set
{
v_Selected = value;
try
{
SetStatu(v_Selected);
}
catch
{
}
}
get
{
return v_Selected;
}
}
///
/// SelectSceneRow
///
///
///
public SelectDeviceWithSeekBarRow(int x = 0, int y = 0)
{
X = Application.GetRealWidth(x);
Y = Application.GetRealHeight(y);
Width = Application.GetRealWidth(1080);
Height = Application.GetRealHeight(348);
}
///
/// Init
///
public void Init(int max=100)
{
MaxLevel = max;
NameBtn = new Button()
{
X = Application.GetRealWidth(81),
Width = Application.GetRealWidth(500),
Height = Application.GetRealHeight(80),
TextColor = ZigbeeColor.Current.GXCTextBlackColor,
TextAlignment = TextAlignment.CenterLeft,
};
AddChidren(NameBtn);
SelectBtn = new Button()
{
X = Application.GetRealWidth(919),
Width = Application.GetMinRealAverage(104),
Height = Application.GetMinRealAverage(104),
UnSelectedImagePath = "Scene/Selected.png",
Visible = false
};
AddChidren(SelectBtn);
ClickButton = new Button
{
Height = Application.GetRealHeight(127)
};
AddChidren(ClickButton);
SeekBar = new HorizontalSeekBar()
{
X = Application.GetRealWidth(81),
Y = Application.GetRealHeight(200),
Width = Application.GetRealWidth(919),
Height = Application.GetRealHeight(127),
BackgroundColor = ZigbeeColor.Current.GXCSeekBarBackground,
ProgressColor = ZigbeeColor.Current.GXCProgressColor,
ThumbColor = ZigbeeColor.Current.GXCBackgroundColor,
Max = MaxLevel,
Progress = MaxLevel
};
AddChidren(SeekBar);
SeekBarTitle = new Button()
{
Y = Application.GetRealHeight(127),
Height = Application.GetRealHeight(50),
Width = Application.GetRealWidth(200),
Gravity = Gravity.CenterHorizontal,
Text = $"{(int)(SeekBar.Progress * 1.0 / MaxLevel * 100)} %",
TextColor = ZigbeeColor.Current.GXCTextGrayColor
};
AddChidren(SeekBarTitle);
line = new Button()
{
X = Application.GetRealWidth(81),
Y = this.Height - 2,
Width = Application.GetRealWidth(919),
Height = 2,
BackgroundColor = ZigbeeColor.Current.GXCGrayLineColor,
};
AddChidren(line);
}
///
/// SetTitle
///
///
public void SetTitle(string title)
{
NameBtn.Text = title;
}
///
/// SetTitle
///
///
public void SetTitle(int title)
{
SetTitle(Language.StringByID(title));
}
///
/// SetStatu
///
///
public void SetStatu(bool statu)
{
SelectBtn.Visible = statu;
}
///
/// hideLine
///
///
public void hideLine(bool statu)
{
line.Visible = !statu;
}
///
/// SetSeekBarTitle
///
public void SetSeekBarTitle()
{
SeekBarTitle.Text = $"{(int)(SeekBar.Progress * 1.0 / MaxLevel * 100)} %";
}
///
/// SetProgress
///
///
public void SetProgress(int progress)
{
SeekBar.Progress = progress;
SetSeekBarTitle();
}
}
}