using System;
using System.Collections.Generic;
using System.Text;
namespace Shared.Phone.UserCenter
{
///
/// 场景图片的控件
///
public class ScenePictrueControl : FrameRowControl
{
#region ■ 变量声明___________________________
///
/// 场景图片控件
///
public ImageView btnScenePic = null;
///
/// 场景名字控件
///
public NormalViewControl btnSceneName = null;
///
/// 场景对象
///
public Common.SceneUI scene = null;
///
/// 收藏触发的事件 true:添加收藏 false:取消收藏
///
public Action CollectEvent = null;
///
/// 选择控件(调用AddSelectControl()函数初始化)
///
private IconViewControl btnSelect = null;
private bool m_IsSelected = false;
///
/// 选择状态
///
public bool IsSelected
{
get { return m_IsSelected; }
set
{
m_IsSelected = value;
if (btnSelect != null) { btnSelect.IsSelected = m_IsSelected; }
}
}
#endregion
#region ■ 初始化_____________________________
///
/// 场景图片的控件(拥有桌布)
///
public ScenePictrueControl()
{
this.UseClickStatu = false;
this.Height = Application.GetRealHeight(440);
}
///
/// 初始化控件
///
/// 场景控件
public void InitControl(Common.SceneUI sceneUI)
{
this.scene = sceneUI;
//场景图片
this.btnScenePic = new ImageView();
btnScenePic.X = Application.GetRealWidth(179);
btnScenePic.Width = Application.GetRealWidth(844);
btnScenePic.Height = Application.GetRealHeight(397);
if (sceneUI.IconPathType == 0)
{
btnScenePic.ImagePath = sceneUI.IconPath;
}
else if (Common.Global.IsExistsByHomeId(sceneUI.IconPath) == true)
{
btnScenePic.ImageBytes = Common.Global.ReadFileByHomeId(sceneUI.IconPath);
}
btnScenePic.Radius = (uint)Application.GetRealHeight(17);
this.AddChidren(btnScenePic, ChidrenBindMode.NotBind);
//阴影
var btnShadow = new PicViewControl(btnScenePic.Width + Application.GetRealWidth(14 * 2), btnScenePic.Height + Application.GetRealHeight(43), false);
btnShadow.X = btnScenePic.X - Application.GetRealWidth(14);
btnShadow.UnSelectedImagePath = "Scene/SceneShadow.png";
this.AddChidren(btnShadow, ChidrenBindMode.BindEvent);
this.btnSceneName = new NormalViewControl(251, 282, true);
btnSceneName.IsMoreLines = true;
btnSceneName.X = ControlCommonResourse.XXLeft;
btnSceneName.Y = Application.GetRealHeight(58);
btnSceneName.BackgroundColor = 0xd6333333;
btnSceneName.RadiusEx = 17;
btnSceneName.Text = sceneUI.Name;
btnSceneName.TextSize = 15;
btnSceneName.TextColor = UserCenterColor.Current.White;
btnSceneName.TextAlignment = TextAlignment.Center;
this.AddChidren(btnSceneName, ChidrenBindMode.NotBind);
}
#endregion
#region ■ 选择控件___________________________
///
/// 添加选择控件
///
public void AddSelectControl()
{
this.btnSelect = new IconViewControl(58);
btnSelect.UnSelectedImagePath = "Item/ItemUnSelected.png";
btnSelect.SelectedImagePath = "Item/ItemSelected.png";
btnSelect.X = Application.GetRealWidth(887);
btnSelect.Y = Application.GetRealHeight(35);
this.AddChidren(btnSelect, ChidrenBindMode.BindEvent);
}
#endregion
#region ■ 收藏控件___________________________
///
/// 添加收藏控件(CollectEvent是收藏的回调事件)
///
public void AddCollectionControl()
{
var btnCollection = new IconViewControl(65);
btnCollection.X = Application.GetRealWidth(81);
btnCollection.Y = Application.GetRealHeight(81);
btnCollection.UnSelectedImagePath = "Item/Collection.png";
btnCollection.SelectedImagePath = "Item/CollectionSelected.png";
if (HdlRoomLogic.Current.IsCollectInRoom(scene) == true)
{
btnCollection.IsSelected = true;
}
this.AddChidren(btnCollection, ChidrenBindMode.NotBind);
btnCollection.ButtonClickEvent += (sender, e) =>
{
btnCollection.IsSelected = !btnCollection.IsSelected;
if (btnCollection.IsSelected == true)
{
HdlSceneLogic.Current.AddLoveScene(scene);
}
else
{
HdlSceneLogic.Current.DeleteLoveScene(scene);
}
this.CollectEvent?.Invoke(btnCollection.IsSelected);
};
}
#endregion
#region ■ 控件摧毁___________________________
///
/// 控件摧毁
///
public override void RemoveFromParent()
{
this.CollectEvent = null;
base.RemoveFromParent();
}
#endregion
}
}