Exemplo n.º 1
0
        public override void LoadStatus(RSFileReader br)
        {
            base.LoadStatusCore(br);
            byte b;
            int  currentSpotIndex         = 0;
            List <MNReferencedSpot> spots = null;

            if (Img != null && Img.Image != null && Img.Image.HasSpots())
            {
                spots = Img.Image.SafeSpots;
            }

            while ((b = br.ReadByte()) != 0)
            {
                switch (b)
                {
                case 15:
                    if (spots != null && currentSpotIndex < spots.Count)
                    {
                        spots[currentSpotIndex].LoadStatus(br);
                    }
                    break;
                }
            }
        }
Exemplo n.º 2
0
        public void Load(RSFileReader br)
        {
            byte b;

            while ((b = br.ReadByte()) != 0)
            {
                switch (b)
                {
                case 10:
                    Name = MNFontName.IntToString(br.ReadInt32());
                    break;

                case 11:
                    Size = br.ReadFloat();
                    break;

                case 13:
                    Italic = br.ReadBool();
                    break;

                case 14:
                    Bold = br.ReadBool();
                    break;

                case 15:
                    Underline = br.ReadBool();
                    break;

                case 16:
                    Name = br.ReadString();
                    break;
                }
            }
        }
Exemplo n.º 3
0
        public override void Load(RSFileReader br)
        {
            br.Log("= = = SOUND = = =\n");
            byte b;

            while ((b = br.ReadByte()) != 0)
            {
                switch (b)
                {
                case 10:
                    AudioType = br.ReadString();
                    break;

                case 11:
                    int length = br.ReadInt32();
                    p_data = br.ReadBytes(length);
                    break;

                case 12:
                    Name = br.ReadString();
                    break;

                case 13:
                    FileName = br.ReadString();
                    break;
                }
            }
        }
Exemplo n.º 4
0
        private static bool LoadBookHeader(string fileName)
        {
            bool r = true;

            using (StreamWriter sw = new StreamWriter(@"d:\LearnToRead\load_book.txt"))
            {
                using (BinaryReader br = new BinaryReader(File.OpenRead(fileName)))
                {
                    MNDocument   document = new MNDocument();
                    RSFileReader fr       = new RSFileReader(br);
                    fr.logStream = sw;
                    try
                    {
                        document.Book.Load(fr);
                        document.Book.FilePath = fileName;
                        MNNotificationCenter.CurrentFileName = fileName;
                        MNNotificationCenter.CurrentDocument = document;
                    }
                    catch (Exception ex)
                    {
                        sw.Flush();
                        sw.WriteLine("Exception:");
                        sw.WriteLine(ex.Message);
                        sw.WriteLine(ex.StackTrace);
                        sw.Flush();
                        r = false;
                    }
                }
            }

            return(r);
        }
Exemplo n.º 5
0
        public override bool Load(RSFileReader br)
        {
            if (base.Load(br))
            {
                byte tag;
                while ((tag = br.ReadByte()) != 0)
                {
                    switch (tag)
                    {
                    case 10:
                        RunningLine = (SMRunningLine)br.ReadInt32();
                        break;

                    case 11:
                        RichContent = br.ReadBool();
                        break;

                    default:
                        return(false);
                    }
                }

                return(true);
            }

            return(false);
        }
Exemplo n.º 6
0
        public override void LoadStatus(RSFileReader br)
        {
            base.LoadStatusCore(br);
            byte b;

            while ((b = br.ReadByte()) != 0)
            {
                switch (b)
                {
                case 20:
                    Columns              = br.ReadInt32();
                    Rows                 = br.ReadInt32();
                    p_cellStatus         = new bool[Columns, Rows];
                    p_cellExpectedStatus = new bool[Columns, Rows];
                    for (int c = 0; c < Columns; c++)
                    {
                        for (int r = 0; r < Rows; r++)
                        {
                            p_cellStatus[c, r]         = br.ReadBool();
                            p_cellExpectedStatus[c, r] = br.ReadBool();
                        }
                    }
                    break;
                }
            }
        }
Exemplo n.º 7
0
        public override bool Load(RSFileReader br)
        {
            if (base.Load(br))
            {
                byte tag;
                while ((tag = br.ReadByte()) != 0)
                {
                    switch (tag)
                    {
                    case 10:
                        Spacing        = br.ReadInt32();
                        Rows           = br.ReadInt32();
                        Columns        = br.ReadInt32();
                        HighlightColor = br.ReadColor();
                        break;

                    default:
                        return(false);
                    }
                }

                return(true);
            }

            return(false);
        }
Exemplo n.º 8
0
        public virtual void Load(RSFileReader R)
        {
            byte tag;

            while ((tag = R.ReadByte()) != 0)
            {
                switch (tag)
                {
                case 10:
                    string        s  = R.ReadString();
                    GVGraphObject go = (GVGraphObject)Parent.TagToObject(s);
                    if (go != null)
                    {
                        go.Load(R);
                        this.Add(go);
                    }
                    else
                    {
                        throw new Exception("Unknown object type " + s + " in loading object collection at position " + R.Position);
                    }
                    break;

                default:
                    throw new Exception("Unknown tag " + (int)tag + " in loading " + GetType().Name + " at position " + R.Position);
                }
            }
        }
Exemplo n.º 9
0
        public override void Load(RSFileReader br)
        {
            string s;

            s         = br.ReadString();
            AudioType = s;
            int length = br.ReadInt32();

            p_data = br.ReadBytes(length);
        }
Exemplo n.º 10
0
        public MNDocument LoadFull()
        {
            string     file = FilePath;
            MNDocument doc  = new MNDocument();

            doc.Book = this;

            file = file.Replace(".smb", ".smd");
            using (BinaryReader br = new BinaryReader(File.OpenRead(file)))
            {
                RSFileReader reader = new RSFileReader(br);
                try
                {
                    doc.Data.Load(reader);
                }
                catch
                {
                }
            }

            file = file.Replace(".smd", ".sme");
            if (File.Exists(file))
            {
                using (BinaryReader br = new BinaryReader(File.OpenRead(file)))
                {
                    RSFileReader reader = new RSFileReader(br);
                    try
                    {
                        doc.DefaultLanguage.Load(reader, true);
                    }
                    catch
                    {
                    }
                }
            }

            file = file.Replace(".sme", ".sms");
            if (File.Exists(file))
            {
                using (BinaryReader br = new BinaryReader(File.OpenRead(file)))
                {
                    RSFileReader reader = new RSFileReader(br);
                    try
                    {
                        doc.Data.LoadStatus(reader);
                    }
                    catch
                    {
                    }
                }
            }

            return(doc);
        }
Exemplo n.º 11
0
        public void LoadStatus(RSFileReader br)
        {
            byte b2;

            while ((b2 = br.ReadByte()) != 0)
            {
                switch (b2)
                {
                case 10:
                    UIStateHighlighted = br.ReadBool();
                    break;
                }
            }
        }
Exemplo n.º 12
0
        public bool Load(string fileName, bool fullRead)
        {
            bool result = false;

            Clear();

            using (BinaryReader fr = new BinaryReader(File.OpenRead(fileName)))
            {
                RSFileReader br = new RSFileReader(fr);
                result = Load(br, fullRead);
            }

            return(result);
        }
Exemplo n.º 13
0
        public override void Load(RSFileReader br)
        {
            byte tag;

            while ((tag = br.ReadByte()) != 0)
            {
                switch (tag)
                {
                case 10: Name = br.ReadString(); break;

                case 12: Text = br.ReadString(); break;
                }
            }
        }
Exemplo n.º 14
0
        private static void LoadBookLang(string fileName)
        {
            if (MNNotificationCenter.CurrentDocument == null)
            {
                return;
            }

            if (!File.Exists(fileName))
            {
                return;
            }

            using (StreamWriter sw = new StreamWriter(@"d:\LearnToRead\load_lang.txt"))
            {
                using (BinaryReader br = new BinaryReader(File.OpenRead(fileName)))
                {
                    MNDocument   document = MNNotificationCenter.CurrentDocument;
                    RSFileReader fr       = new RSFileReader(br);
                    fr.logStream = sw;
                    try
                    {
                        document.DefaultLanguage.Load(fr, true);
                    }
                    catch (Exception ex)
                    {
                        sw.Flush();
                        sw.WriteLine("Exception:");
                        sw.WriteLine(ex.Message);
                        sw.WriteLine(ex.StackTrace);
                        sw.Flush();
                    }
                }
            }

            MNDocument doc = MNNotificationCenter.CurrentDocument;

            if (doc.DefaultLanguage.Styles.Count == 0)
            {
                doc.InitialiseDefaultStyles();
            }

            foreach (MNReferencedImage ri in doc.DefaultLanguage.Images)
            {
                if (ri.Id < 1)
                {
                    ri.Id = doc.Data.GetNextId();
                }
            }
        }
Exemplo n.º 15
0
        public void Load(RSFileReader br)
        {
            if (!br.ReadHeader(p_fileHeader))
            {
                return;
            }

            Clear();

            int  pageIndex = 0;
            byte b;

            while ((b = br.ReadByte()) != 0)
            {
                switch (b)
                {
                case 6:
                    p_id = br.ReadInt32();
                    break;

                case 10:
                    MNPage p = new MNPage(p_document);
                    p.Index = pageIndex;
                    p.Load(br);
                    p.ResetStatus();
                    Pages.Add(p);
                    pageIndex++;
                    break;

                case 11:
                    MNPage pt = new MNPage(p_document);
                    pt.Load(br);
                    Templates.Add(pt);
                    break;

                case 12:
                    MNReferencedText tx = new MNReferencedText();
                    tx.Load(br);
                    Scripts.Add(tx);
                    break;

                case 13:
                    MNMenu mn = new MNMenu();
                    mn.Load(p_document, br);
                    Menus.Add(mn);
                    break;
                }
            }
        }
Exemplo n.º 16
0
        private void convertAllFilesToVersion3ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            foreach (string s in Directory.EnumerateFiles(@"c:\Users\Gopa702\Documents\"))
            {
                if (Path.GetExtension(s) == ".smb")
                {
                    Debugger.Log(0, "", "File: " + s + "\n");
                    MNDocument doc = new MNDocument();

                    using (Stream str = File.OpenRead(s))
                    {
                        using (BinaryReader br = new BinaryReader(str))
                        {
                            RSFileReader fr = new RSFileReader(br);
                            doc.Book.Load(fr);
                        }
                    }
                    using (Stream str = File.OpenWrite(s))
                    {
                        using (BinaryWriter br = new BinaryWriter(str))
                        {
                            RSFileWriter fr = new RSFileWriter(br);
                            doc.Book.Save(fr);
                        }
                    }
                }
                else if (Path.GetExtension(s) == ".smd")
                {
                    Debugger.Log(0, "", "File: " + s + "\n");
                    MNDocument doc = new MNDocument();
                    using (Stream str = File.OpenRead(s))
                    {
                        using (BinaryReader br = new BinaryReader(str))
                        {
                            RSFileReader fr = new RSFileReader(br);
                            doc.Data.Load(fr);
                        }
                    }
                    using (Stream str = File.OpenWrite(s))
                    {
                        using (BinaryWriter bw = new BinaryWriter(str))
                        {
                            RSFileWriter fw = new RSFileWriter(bw);
                            doc.Data.Save(fw);
                        }
                    }
                }
            }
        }
Exemplo n.º 17
0
        public static SMRectangleArea FromBytes(byte[] buffer)
        {
            SMRectangleArea area = null;

            using (MemoryStream ms = new MemoryStream(buffer))
            {
                using (BinaryReader br = new BinaryReader(ms))
                {
                    RSFileReader fr = new RSFileReader(br);
                    area = new SMRectangleArea();
                    area.Load(fr);
                }
            }
            return(area);
        }
Exemplo n.º 18
0
        public override void LoadStatus(RSFileReader br)
        {
            base.LoadStatusCore(br);

            byte b;

            while ((b = br.ReadByte()) != 0)
            {
                switch (b)
                {
                case 20:
                    Status = br.ReadBool();
                    break;
                }
            }
        }
Exemplo n.º 19
0
        public override bool Load(RSFileReader br)
        {
            if (base.Load(br))
            {
                byte b;
                cards.Clear();
                while ((b = br.ReadByte()) != 0)
                {
                    switch (b)
                    {
                    case 10:
                        Rows = br.ReadInt32();
                        break;

                    case 11:
                        Columns = br.ReadInt32();
                        break;

                    case 12:
                        SMMemoryGameCard card = new SMMemoryGameCard(Document);
                        while ((b = br.ReadByte()) != 0)
                        {
                            switch (b)
                            {
                            case 100:
                                card.Tag = br.ReadString();
                                break;

                            case 110:
                                card.Image.ImageId = br.ReadInt64();
                                break;
                            }
                        }
                        cards.Add(card);
                        break;

                    case 13:
                        BackImage.ImageId = br.ReadInt64();
                        break;
                    }
                }

                MixCards();
            }

            return(true);
        }
Exemplo n.º 20
0
        public override void Load(RSFileReader R)
        {
            base.Load(R);

            byte tag;

            while ((tag = R.ReadByte()) != 0)
            {
                switch (tag)
                {
                case 20:
                    Action = new GVDeclarationProcedure();
                    Action.Load(R);
                    break;
                }
            }
        }
Exemplo n.º 21
0
        public override void Load(RSFileReader br)
        {
            int    count   = br.ReadInt32();
            string key     = "";
            string objType = "";

            Nodes.Clear();
            for (int i = 0; i < count; i++)
            {
                MNReferencedCore obj = null;
                key     = br.ReadString();
                objType = br.ReadString();
                obj     = GOFile.CreateInstance(objType);
                obj.Load(br);
                Nodes.Add(key, obj);
            }
        }
Exemplo n.º 22
0
        public override bool Load(RSFileReader br)
        {
            if (base.Load(br))
            {
                byte b;
                while ((b = br.ReadByte()) != 0)
                {
                    switch (b)
                    {
                    case 10:
                        break;
                    }
                }
            }

            return(true);
        }
Exemplo n.º 23
0
        public void Load(RSFileReader br)
        {
            byte tag;

            while ((tag = br.ReadByte()) != 0)
            {
                switch (tag)
                {
                case 10:
                    /*Source = new SMControlLoadingPlaceholder() { controlId = br.ReadInt32() };
                    *  Target = new SMControlLoadingPlaceholder() { controlId = br.ReadInt32() };*/
                    SourceId        = br.ReadInt64();
                    TargetId        = br.ReadInt64();
                    ConnectionStyle = (SMConnectionStyle)br.ReadInt32();
                    break;
                }
            }
        }
Exemplo n.º 24
0
        public void Load(RSFileReader br)
        {
            byte b;

            while ((b = br.ReadByte()) != 0)
            {
                switch (b)
                {
                case 10: SizeToFit = br.ReadBool(); break;

                case 11: Align = (SMHorizontalAlign)br.ReadInt32(); break;

                case 12: VertAlign = (SMVerticalAlign)br.ReadInt32(); break;

                case 13: LineSpacing = br.ReadFloat(); break;
                }
            }
        }
Exemplo n.º 25
0
        public override bool Load(RSFileReader br)
        {
            if (base.Load(br))
            {
                byte b;
                while ((b = br.ReadByte()) != 0)
                {
                    switch (b)
                    {
                    case 10:
                        BackgroundImageId = br.ReadInt64();
                        break;
                    }
                }
            }

            return(true);
        }
Exemplo n.º 26
0
        public override void Load(RSFileReader br)
        {
            byte tag = 0;

            while ((tag = br.ReadByte()) != 0)
            {
                switch (tag)
                {
                case 1: TimeOffset = br.ReadInt64(); break;

                case 2: Valid = (br.ReadByte() == 1); break;

                case 3: Text = br.ReadString(); break;

                default: break;
                }
            }
        }
Exemplo n.º 27
0
        public bool Load(string fileName, bool fullRead)
        {
            using (BinaryReader fr = new BinaryReader(File.OpenRead(fileName)))
            {
                RSFileReader br = new RSFileReader(fr);
                byte[]       b  = br.ReadBytes(16);
                if (!ByteArrayCompare(b, p_FileHeader))
                {
                    LoadMessage = "Header of file does not meet criteria for GOF file.";
                    return(false);
                }

                Properties.Clear();
                byte tag;

                while ((tag = br.ReadByte()) != 0)
                {
                    switch (tag)
                    {
                    case 10:
                        string key   = br.ReadString();
                        string value = br.ReadString();
                        Properties.Add(key, value);
                        break;

                    case 100:
                        if (!fullRead)
                        {
                            return(true);
                        }
                        Data.Clear();
                        Data.Load(br);
                        break;

                    default:
                        LoadMessage = string.Format("Unknown tag {0} at position {1} in the file.", tag, br.Position);
                        return(false);
                    }
                }
            }

            LoadMessage = string.Empty;
            return(true);
        }
Exemplo n.º 28
0
        public static void Load()
        {
            if (File.Exists(FilePath))
            {
                using (Stream sr = File.OpenRead(FilePath))
                {
                    using (BinaryReader br = new BinaryReader(sr))
                    {
                        RSFileReader fr = new RSFileReader(br);

                        byte b = 0;
                        internalDocument = new MNDocument();
                        while ((b = fr.ReadByte()) != 0)
                        {
                            switch (b)
                            {
                            case 10:
                                MNPage p = new MNPage(internalDocument);
                                p.Load(fr);
                                p.TemplateName = "";
                                p.TemplateId   = -1;
                                internalDocument.Data.Templates.Add(p);
                                break;

                            case 11:
                                MNReferencedImage img = new MNReferencedImage();
                                img.Load(fr);
                                internalDocument.DefaultLanguage.Images.Add(img);
                                break;

                            case 12:
                                MNReferencedStyle st = new MNReferencedStyle();
                                st.Load(fr);
                                internalDocument.DefaultLanguage.Styles.Add(st);
                                break;
                            }
                        }
                    }
                }

                //internalDocument.ReapplyStyles();
            }
        }
Exemplo n.º 29
0
        public void Load(RSFileReader R)
        {
            byte tag;

            while ((tag = R.ReadByte()) != 0)
            {
                switch (tag)
                {
                case 10: DataType = R.ReadString(); break;

                case 11: Name = R.ReadString(); break;

                case 12: Value = R.ReadString(); break;

                case 13: Direction = (GVDataDirection)R.ReadInt32(); break;

                default: break;
                }
            }
        }
Exemplo n.º 30
0
        public override bool Load(RSFileReader br)
        {
            if (base.Load(br))
            {
                byte tag;
                while ((tag = br.ReadByte()) != 0)
                {
                    switch (tag)
                    {
                    case 10: Drawings = br.ReadString(); break;

                    default: return(false);
                    }
                }

                return(true);
            }

            return(false);
        }