예제 #1
0
        public void WriteToStream(PacketStream stream)
        {
            stream.WriteString((Window != null) ? Window : String.Empty);

            stream.WriteBool(HtmlSource != null);
            if (HtmlSource != null)
            {
                stream.WriteString(HtmlSource);
            }

            stream.WriteUInt16((UInt16)Size.Width);
            stream.WriteUInt16((UInt16)Size.Height);
        }
예제 #2
0
        public void WriteToStream(PacketStream stream)
        {
            stream.WriteByte((byte)StatPanels.Count);
            foreach (KeyValuePair <string, List <string> > statPanel in StatPanels)
            {
                stream.WriteString(statPanel.Key);

                stream.WriteByte((byte)statPanel.Value.Count);
                foreach (string line in statPanel.Value)
                {
                    stream.WriteString(line);
                }
            }
        }
 public void WriteToStream(PacketStream stream)
 {
     stream.WriteBool(ConnectionSuccessful);
     if (!ConnectionSuccessful)
     {
         stream.WriteString(ErrorMessage);
     }
 }
예제 #4
0
        public void WriteToStream(PacketStream stream)
        {
            stream.WriteUInt16((UInt16)PromptId);

            stream.WriteUInt16((UInt16)Type);
            switch (Type)
            {
            case DMValueType.Null: break;

            case DMValueType.Text: stream.WriteString((string)Value); break;

            case DMValueType.Num: stream.WriteInt32((Int32)Value); break;

            case DMValueType.Message: stream.WriteString((string)Value); break;

            default: throw new Exception("Invalid prompt response type '" + Type + "'");
            }
        }
예제 #5
0
        public void WriteToStream(PacketStream stream)
        {
            stream.WriteString((File != null) ? File : String.Empty);
            stream.WriteUInt16(Channel);

            if (File != null)
            {
                stream.WriteByte((byte)Volume);
            }
        }
예제 #6
0
 public void WriteToStream(PacketStream stream)
 {
     stream.WriteString(Filename);
     stream.WriteBuffer(Data);
 }
예제 #7
0
 public void WriteToStream(PacketStream stream)
 {
     stream.WriteUInt16((UInt16)PromptId);
     stream.WriteUInt16((UInt16)Types);
     stream.WriteString(Message);
 }
예제 #8
0
 public void WriteToStream(PacketStream stream)
 {
     stream.WriteString(Value);
     stream.WriteString((Control != null) ? Control : String.Empty);
 }
예제 #9
0
 public void WriteToStream(PacketStream stream)
 {
     stream.WriteString(ResourcePath);
     stream.WriteBuffer(ResourceData);
 }
예제 #10
0
        public void WriteToStream(PacketStream stream)
        {
            stream.WriteByte((byte)InterfaceDescriptor.WindowDescriptors.Count);

            foreach (WindowDescriptor windowDescriptor in InterfaceDescriptor.WindowDescriptors)
            {
                stream.WriteString(windowDescriptor.Name);

                stream.WriteByte((byte)windowDescriptor.ElementDescriptors.Count);
                foreach (ElementDescriptor elementDescriptor in windowDescriptor.ElementDescriptors)
                {
                    stream.WriteString(elementDescriptor.Name);

                    if (elementDescriptor is ElementDescriptorMain)
                    {
                        stream.WriteByte((byte)DescriptorType.Main);
                    }
                    else if (elementDescriptor is ElementDescriptorChild)
                    {
                        stream.WriteByte((byte)DescriptorType.Child);
                    }
                    else if (elementDescriptor is ElementDescriptorInput)
                    {
                        stream.WriteByte((byte)DescriptorType.Input);
                    }
                    else if (elementDescriptor is ElementDescriptorButton)
                    {
                        stream.WriteByte((byte)DescriptorType.Button);
                    }
                    else if (elementDescriptor is ElementDescriptorOutput)
                    {
                        stream.WriteByte((byte)DescriptorType.Output);
                    }
                    else if (elementDescriptor is ElementDescriptorInfo)
                    {
                        stream.WriteByte((byte)DescriptorType.Info);
                    }
                    else if (elementDescriptor is ElementDescriptorMap)
                    {
                        stream.WriteByte((byte)DescriptorType.Map);
                    }
                    else if (elementDescriptor is ElementDescriptorBrowser)
                    {
                        stream.WriteByte((byte)DescriptorType.Browser);
                    }
                    else
                    {
                        throw new Exception("Invalid descriptor");
                    }

                    if (elementDescriptor.Pos.HasValue)
                    {
                        stream.WriteByte((byte)AttributeType.Pos);
                        stream.WriteUInt16((UInt16)elementDescriptor.Pos.Value.X);
                        stream.WriteUInt16((UInt16)elementDescriptor.Pos.Value.Y);
                    }

                    if (elementDescriptor.Size.HasValue)
                    {
                        stream.WriteByte((byte)AttributeType.Size);
                        stream.WriteUInt16((UInt16)elementDescriptor.Size.Value.Width);
                        stream.WriteUInt16((UInt16)elementDescriptor.Size.Value.Height);
                    }

                    if (elementDescriptor.Anchor1.HasValue)
                    {
                        stream.WriteByte((byte)AttributeType.Anchor1);
                        stream.WriteUInt16((UInt16)elementDescriptor.Anchor1.Value.X);
                        stream.WriteUInt16((UInt16)elementDescriptor.Anchor1.Value.Y);
                    }

                    if (elementDescriptor.Anchor2.HasValue)
                    {
                        stream.WriteByte((byte)AttributeType.Anchor2);
                        stream.WriteUInt16((UInt16)elementDescriptor.Anchor2.Value.X);
                        stream.WriteUInt16((UInt16)elementDescriptor.Anchor2.Value.Y);
                    }

                    if (elementDescriptor.BackgroundColor.HasValue)
                    {
                        stream.WriteByte((byte)AttributeType.BackgroundColor);
                        stream.WriteByte(elementDescriptor.BackgroundColor.Value.R);
                        stream.WriteByte(elementDescriptor.BackgroundColor.Value.G);
                        stream.WriteByte(elementDescriptor.BackgroundColor.Value.B);
                    }

                    if (elementDescriptor.IsVisible != default)
                    {
                        stream.WriteByte((byte)AttributeType.IsVisible);
                        stream.WriteBool(elementDescriptor.IsVisible.Value);
                    }

                    if (elementDescriptor.IsDefault != default)
                    {
                        stream.WriteByte((byte)AttributeType.IsDefault);
                        stream.WriteBool(elementDescriptor.IsDefault);
                    }

                    ElementDescriptorMain elementMainDescriptor = elementDescriptor as ElementDescriptorMain;
                    if (elementMainDescriptor != null)
                    {
                        if (elementMainDescriptor.IsPane != default)
                        {
                            stream.WriteByte((byte)AttributeType.IsPane);
                            stream.WriteBool(elementMainDescriptor.IsPane);
                        }
                    }

                    ElementDescriptorChild elementChildDescriptor = elementDescriptor as ElementDescriptorChild;
                    if (elementChildDescriptor != null)
                    {
                        if (elementChildDescriptor.Left != null)
                        {
                            stream.WriteByte((byte)AttributeType.Left);
                            stream.WriteString(elementChildDescriptor.Left);
                        }

                        if (elementChildDescriptor.Right != null)
                        {
                            stream.WriteByte((byte)AttributeType.Right);
                            stream.WriteString(elementChildDescriptor.Right);
                        }

                        if (elementChildDescriptor.IsVert != default)
                        {
                            stream.WriteByte((byte)AttributeType.IsVert);
                            stream.WriteBool(elementChildDescriptor.IsVert);
                        }
                    }

                    ElementDescriptorButton elementButtonDescriptor = elementDescriptor as ElementDescriptorButton;
                    if (elementButtonDescriptor != null)
                    {
                        if (elementButtonDescriptor.Text != null)
                        {
                            stream.WriteByte((byte)AttributeType.Text);
                            stream.WriteString(elementButtonDescriptor.Text);
                        }
                    }

                    stream.WriteByte((byte)AttributeType.End);
                }
            }
        }
예제 #11
0
 public void WriteToStream(PacketStream stream)
 {
     stream.WriteString(Query);
 }