wxr
2019-12-25 3df772e4fdd553b2954e8f3f55ce7ff5905407c3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
using Shared.SimpleControl.Phone;
using System;
 
namespace Shared.SimpleControl.Pad
{
    public class SystemFoolHeat : Common
    {
        public void SystemTerrestrialHeatShow (FoolHeat fh, Common thDevice)
        {
            SystemMiddle.ThirdScrolView.RemoveAll ();
 
            #region  top         
            EditText textButton = new EditText () {
                X = Application.GetRealWidth (40),
                Height = Application.GetRealHeight (50),
                Width = Application.GetRealWidth (400),
                Text = fh.Name,
                Gravity = Gravity.CenterVertical,
                TextAlignment = TextAlignment.CenterLeft,
                TextSize = 15,
                SelectedBackgroundColor = 0xFF000000,
            };
            SystemMiddle.ThirdScrolView.TitleView.AddChidren (textButton);
 
            Button editor = new Button () {
                Height = Application.GetRealHeight (90),
                Width = Application.GetRealWidth (70),
                UnSelectedImagePath = "Item/Editor.png",
                SelectedImagePath = "Item/EditorSelected.png",
                Gravity = Gravity.CenterVertical,
                X = Application.GetRealWidth (550),
            };
            SystemMiddle.ThirdScrolView.TitleView.AddChidren (editor);
            editor.MouseUpEventHandler += (sender, e) => {
                if (editor.IsSelected) {
                    editor.IsSelected = false;
                    textButton.IsSelected = false;
                    textButton.Enable = false;
                    MainPage.Loading.Start ();
                    byte [] nameBytes = CommonPage.MyEncodingGB2312.GetBytes (textButton.Text.Trim ());
                    System.Threading.Tasks.Task.Run (() => {
                        byte [] updateBytes = Control.ControlBytesSendHasReturn (Command.ReadDeviceLoopInfo, fh.SubnetID, fh.DeviceID, new byte [] {
                        fh.BigClass,fh.MinClass,fh.LoopID
                        });
                        if (updateBytes == null) {
                            Application.RunOnMainThread (() => {
                                new Alert (Language.StringByID (R.MyInternationalizationString.Tip), Language.StringByID (R.MyInternationalizationString.TipEquipmentNotOnline), Language.StringByID (R.MyInternationalizationString.Close)).Show ();
                                MainPage.Loading.Hide ();
                            });
                            return;
                        }
                        byte [] remakeBytes = new byte [20];
                        Array.Copy (nameBytes, 0, remakeBytes, 0, 20 < nameBytes.Length ? 20 : nameBytes.Length);
                        Array.Copy (remakeBytes, 0, updateBytes, 3, 20);
                        var reBytes = Control.ControlBytesSendHasReturn (Command.SetDeviceLoopInfo, fh.SubnetID, fh.DeviceID, updateBytes);
                        if (reBytes != null) {
                            Application.RunOnMainThread (() => {
                                fh.Name = textButton.Text.Trim ();
                                IO.FileUtils.SaveEquipmentMessage (fh, fh.LoopID.ToString ());
                                MainPage.Loading.Hide ();
                            });
                        } else {
                            Application.RunOnMainThread (() => {
                                new Alert (Language.StringByID (R.MyInternationalizationString.Tip), Language.StringByID (R.MyInternationalizationString.TipEquipmentNotOnline), Language.StringByID (R.MyInternationalizationString.Close)).Show ();
                                MainPage.Loading.Hide ();
                            });
                        }
                    });
                } else {
                    textButton.Enable = textButton.IsSelected = editor.IsSelected = true;
                }
            };
            #endregion
 
            #region MyRegion
            FrameLayout frameLayoutBody = new FrameLayout () {
                Height = Application.GetRealHeight (798),
                Width = LayoutParams.MatchParent,
            };
 
            SystemMiddle.ThirdScrolView.AddChidren (frameLayoutBody);
 
            //---output test
            Button btnOutput = new Button () {
                Width = Application.GetRealWidth (203),
                Height = Application.GetRealHeight (53),
                X = Application.GetRealWidth (60),
                Y = Application.GetRealHeight (40),
                TextID = R.MyInternationalizationString.Test,
                TextAlignment = TextAlignment.CenterLeft,
            };
            frameLayoutBody.AddChidren (btnOutput);
 
            Button btnSwitch = new Button () {
                Width = Application.GetRealWidth (150),
                Height = Application.GetRealHeight (150),
                Y = btnOutput.Bottom + Application.GetRealHeight (30),
                SelectedImagePath = "AC/ACClose.png",
                TextAlignment = TextAlignment.Center,
                UnSelectedImagePath = "AC/ACCloseSelected.png",
                Gravity = Gravity.CenterHorizontal
            };
            if (fh.Status == 0)
                btnSwitch.IsSelected = false;
            else
                btnSwitch.IsSelected = true;
            frameLayoutBody.AddChidren (btnSwitch);
            btnSwitch.MouseUpEventHandler += (sender, e) => {
                if (btnSwitch.IsSelected) {
                    fh.Status = 0;
                    btnSwitch.IsSelected = false;
                } else {
                    fh.Status = 1;
                    btnSwitch.IsSelected = true;
                }
                System.Threading.Tasks.Task.Run (() => {
                    fh.Serverx_FH_CMD (FoolHeat.CommandType.Switch);
                });
            };
            #endregion
        }
    }
}