예제 #1
0
            public static NumericInputNode Read(BinaryReader br)
            {
                NumericInputNode ret = new NumericInputNode();

                ret.TextNode     = TextNode.Read(br);
                ret.Value        = br.ReadInt32();
                ret.Max          = br.ReadInt32();
                ret.Min          = br.ReadInt32();
                ret.FocusedColor = br.ReadUInt32();
                ret.AddValue     = br.ReadInt32();
                ret.EndLetterId  = br.ReadUInt32();

                ret.field1 = br.ReadByte();

                ret.AllowFocus = (ret.field1 & 0x80) == 0x80;
                ret.Comma      = (ret.field1 & 0x40) == 0x40;
                ret.Unk1       = (byte)(ret.field1 & 0x3F);

                ret.Unk2 = br.ReadBytes(3);
                return(ret);
            }
예제 #2
0
            public static TextInputNode Read(BinaryReader br)
            {
                TextInputNode ret = new TextInputNode();

                ret.TextNode = TextNode.Read(br);
                ret.Color    = br.ReadUInt32();
                ret.IMEColor = br.ReadUInt32();
                ret.MaxWidth = br.ReadUInt32();
                ret.MaxLine  = br.ReadUInt32();
                ret.MaxSByte = br.ReadUInt32();
                ret.MaxChar  = br.ReadUInt32();

                ret.field1 = br.ReadByte();

                ret.Ufast          = (ret.field1 & 0x80) == 0x80;
                ret.Mask           = (ret.field1 & 0x40) == 0x40;
                ret.Phrase         = (ret.field1 & 0x20) == 0x20;
                ret.HistoryEnabled = (ret.field1 & 0x10) == 0x10;
                ret.IMEEnabled     = (ret.field1 & 0x08) == 0x08;
                ret.EscapeClears   = (ret.field1 & 0x04) == 0x04;
                ret.CapsAllowed    = (ret.field1 & 0x02) == 0x02;
                ret.LowerAllowed   = (ret.field1 & 0x01) == 0x01;

                ret.field2 = br.ReadByte();

                ret.NumbersAllowed = (ret.field2 & 0x80) == 0x80;
                ret.SymbolsAllowed = (ret.field2 & 0x40) == 0x40;
                ret.WordWrap       = (ret.field2 & 0x20) == 0x20;
                ret.Multi          = (ret.field2 & 0x10) == 0x10;
                ret.AutoMaxWidth   = (ret.field2 & 0x08) == 0x08;
                ret.Unk1           = (byte)(ret.field2 & 0x07);

                ret.Charset       = br.ReadUInt16();
                ret.CharsetExtras = br.ReadChars(16);
                return(ret);
            }