using System;
using System.Collections.Generic;
using System.Text;
using System.Threading.Tasks;
using ZigBee.Device;
namespace Shared.Phone.UserCenter.SharedContent
{
///
/// 配置新共享内容的主界面
///
public class ConfigureNewSharedListRoomForm : EditorCommonForm
{
#region ■ 变量声明___________________________
///
/// 列表控件
///
private VerticalScrolViewLayout listView = null;
///
/// 成员信息
///
private MemberInfoRes memberResult = null;
///
/// 成员的分享数据
///
private MemberShardInfoData memberShardInfo = null;
#endregion
#region ■ 初始化_____________________________
///
/// 画面显示(底层会固定调用此方法,借以完成画面创建)
///
/// 成员信息
/// 成员的共享信息
public void ShowForm(MemberInfoRes i_memberResult, MemberShardInfoData i_memberShardInfo)
{
this.memberResult = i_memberResult;
this.memberShardInfo = i_memberShardInfo;
this.memberShardInfo.SubAccountDistributedMark = this.memberResult.SubAccountDistributedMark;
//设置头部信息
base.SetTitleText(Language.StringByID(R.MyInternationalizationString.uAddShared));
//初始化中部信息
//this.InitMiddleFrame();
}
/////
///// 初始化中部信息
/////
//private void InitMiddleFrame()
//{
// //清空bodyFrame
// this.ClearBodyFrame();
// //区域列表
// var btnTitle = new NormalViewControl(1000, true);
// btnTitle.X = ControlCommonResourse.XXLeft;
// btnTitle.TextID = R.MyInternationalizationString.uAreaList;
// btnTitle.Y = Application.GetRealHeight(30);
// bodyFrameLayout.AddChidren(btnTitle);
// this.listView = new VerticalScrolViewLayout();
// listView.Y = btnTitle.Bottom + Application.GetRealHeight(30);
// listView.Height = bodyFrameLayout.Height - Application.GetRealHeight(30) - btnTitle.Bottom;
// bodyFrameLayout.AddChidren(listView);
// HdlThreadLogic.Current.Run(() =>
// {
// //初始化区域列表
// this.InitAreaListRow();
// });
//}
#endregion
//#region ■ 区域列表___________________________
/////
///// 初始化区域列表
/////
//private void InitAreaListRow()
//{
// bool hadShard = false;
// foreach (var room in Shared.Common.Room.Lists)
// {
// if (this.CheckCanShowRow(room) == false)
// {
// //检测能否显示该房间
// continue;
// }
// hadShard = true;
// Application.RunOnMainThread(() =>
// {
// if (this.Parent != null)
// {
// this.AddRoomRow(room);
// }
// });
// }
// if (hadShard == false)
// {
// Application.RunOnMainThread(() =>
// {
// if (bodyFrameLayout != null)
// {
// bodyFrameLayout.RemoveAll();
// //全部区域无可共享的设备
// var btnMsg = new MsgViewControl(bodyFrameLayout.Width, false);
// btnMsg.Gravity = Gravity.CenterVertical;
// btnMsg.TextID = R.MyInternationalizationString.uNotShardDeviceInAllRoomMsg;
// bodyFrameLayout.AddChidren(btnMsg);
// }
// });
// }
//}
/////
///// 添加房间行
/////
/////
//private void AddRoomRow(Common.Room room)
//{
// var row = new StatuRowLayout(listView);
// //房间名
// var btnName = new RowCenterView(false);
// btnName.Text = room.Name;
// row.AddChidren(btnName);
// row.AddRightArrow();
// //分享
// var btnShard = new RowEditorButton();
// btnShard.TextID = R.MyInternationalizationString.uShared;
// row.AddRightView(btnShard);
// btnShard.MouseUpEventHandler += (sender, e) =>
// {
// //确定共享该区域?
// string msg = Language.StringByID(R.MyInternationalizationString.uConfirmShardRoomContent);
// this.ShowConfirmMsg(msg, "DoSharedContentByRoom", room);
// };
// row.MouseUpEvent += (sender, e) =>
// {
// var form = new ConfigureNewSharedMainForm();
// form.AddForm(room, memberResult, memberShardInfo);
// };
//}
/////
///// 检测该房间能否显示
/////
/////
/////
//private bool CheckCanShowRow(Common.Room room)
//{
// if (room.DeviceUIList.Count == 0 && room.SceneUIList.Count == 0)
// {
// return false;
// }
// if (room.IsLove == true)
// {
// return false;
// }
// if (memberShardInfo.dicAllMemberShard.ContainsKey(room.FileName) == false)
// {
// //没有这个房间
// return true;
// }
// var listCheck = memberShardInfo.dicAllMemberShard[room.FileName];
// foreach (var deviceUi in room.DeviceUIList)
// {
// if (deviceUi.CommonDevice == null)
// {
// continue;
// }
// if (listCheck.Contains(deviceUi.CommonDevice.FilePath) == false)
// {
// //存在未分享的设备的话,此房间可以显示
// return true;
// }
// }
// foreach (var sceneUi in room.SceneUIList)
// {
// if (sceneUi == null)
// {
// continue;
// }
// if (listCheck.Contains(sceneUi.FileName) == false)
// {
// //存在未分享的场景的话,此房间可以显示
// return true;
// }
// }
// return false;
//}
//#endregion
//#region ■ 分享指定区域_______________________
/////
///// 执行分分享指定区域
/////
///// 指定要分享的房间
//public void DoSharedContentByRoom(Common.Room room)
//{
// if (memberShardInfo.dicAllMemberShard.ContainsKey(room.FileName) == false)
// {
// memberShardInfo.dicAllMemberShard[room.FileName] = new HashSet();
// }
// //重复检测用
// var listCheck = memberShardInfo.dicAllMemberShard[room.FileName];
// //获取全部设备
// var listDevice = new List();
// foreach (var deviceUi in room.DeviceUIList)
// {
// var device = deviceUi.CommonDevice;
// if (device == null || listCheck.Contains(device.FilePath) == true)
// {
// //异常,或者已经分享了的,不再显示
// continue;
// }
// listDevice.Add(device);
// }
// //获取全部场景
// var listScene = new List();
// foreach (var sceneUi in room.SceneUIList)
// {
// if (sceneUi == null || listCheck.Contains(sceneUi.FileName) == true)
// {
// //异常,或者已经分享了的,不再显示
// continue;
// }
// listScene.Add(sceneUi);
// }
// HdlThreadLogic.Current.Run(async () =>
// {
// //执行上传
// var result = await HdlShardLogic.Current.DoUploadSharedContent(memberShardInfo, room, listDevice, listScene);
// if (result == true)
// {
// //分享成功
// string msg = Language.StringByID(R.MyInternationalizationString.uShardSuccess);
// this.ShowMassage(msg);
// Application.RunOnMainThread(() =>
// {
// if (this.Parent != null)
// {
// //重新刷新界面
// this.InitMiddleFrame();
// }
// });
// }
// });
//}
//#endregion
//#region ■ 界面重新激活事件___________________
/////
///// 自身的上层界面关闭后,它自身处于最上层时,触发的事件
/////
//public override void FormActionAgainEvent()
//{
// //不要删除这个函数
// base.FormActionAgainEvent();
// //重新刷新界面
// this.InitMiddleFrame();
//}
//#endregion
//#region ■ 结构体_____________________________
/////
///// 接收分享数据
/////
//private class MemberShardInfoResult
//{
// ///
// /// 文件名字
// ///
// public string ShareName = string.Empty;
// ///
// /// 主键
// ///
// public string DistributedMark = string.Empty;
//}
//#endregion
}
}