Exemplo n.º 1
0
        public void Load(string filename)
        {
            StreamReader reader = new StreamReader(Path.Combine("/users/JackM/Desktop/", filename));

            try
            {
                Background = Color.FromArgb(reader.ReadInteger());
                int count = reader.ReadInteger();

                for (int i = 0; i < count; i++)
                {
                    string kind = reader.ReadLine();
                    if (kind == "Rectangle")
                    {
                        Rectangle s = new Rectangle();
                        s.LoadFrom(reader);
                        _shapes.Add(s);
                    }
                    else if (kind == "Circle")
                    {
                        Circle s = new Circle();
                        s.LoadFrom(reader);
                        _shapes.Add(s);
                    }
                    else if (kind == "Line")
                    {
                        Line s = new Line();
                        s.LoadFrom(reader);
                        _shapes.Add(s);
                    }
                    else
                    {
                        throw new InvalidDataException("Unknown shape kind:  " + kind);
                    }
                }
            }
            finally
            {
                reader.Close();
            }
        }
        public void Load(string filename)
        {
            StreamReader reader = new StreamReader(filename);

            try
            {
                int    count;
                Shape  s;
                string kind;

                _background = Color.FromArgb(reader.ReadInteger());
                count       = reader.ReadInteger();

                for (int i = 0; i < count; i++)
                {
                    kind = reader.ReadLine();

                    switch (kind)
                    {
                    case "Rectangle":
                        s = new Rectangle();
                        break;

                    case "Circle":
                        s = new Circle();
                        break;

                    default:
                        throw new InvalidDataException("Unknown shape kind: " + kind);
                    }

                    s.LoadFrom(reader);
                    _shapes.Add(s);
                }
            }
            finally
            {
                reader.Close();
            }
        }